> 技术文档 > 安全-JAVA开发-第一天_java 安全开发 教程

安全-JAVA开发-第一天_java 安全开发 教程

目标:

安装环境  了解基础架构  了解代码执行顺序 与数据库进行连接

准备:

安装 下载IDEA并下载tomcat(后续出教程)

之后新建项目

注意点如下

1.应用程序服务器选择Web开发

2.新建Tomcat的服务器配置文件 并使用

HelloServlet所在的目录为我们操作的目录

先进行调试

出现这个页面为成功

我们建立一个自己的页面

IndexServlet

package com.example.demo7;import jakarta.servlet.ServletException;import jakarta.servlet.http.HttpServlet;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServletResponse;import java.io.IOException;import java.io.PrintWriter;
@WebServlet(\"/new\")//使用这个方法 不用配置web.xml文件
public class IndexServlet extends HttpServlet { @Override //使用这个后 检测到Get方法 会执行相应代码 类似的有doPost等 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String name = req.getParameter(\"name\");//接收输入的name值 PrintWriter out = resp.getWriter();//打印在页面中 out.println(\"name: \" + name); System.out.println(name);//打印在调试页面中 System.out.println(\"doGet\"); //super.doGet(req, resp); }//POST提交的例子 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// super.doPost(req, resp); String name = req.getParameter(\"name\");//接收输入的name值 System.out.println(name);//打印在调试页面中 System.out.println(\"doPost\"); }}

并且我们需要在

目录下配置相应文件

  index  com.example.demo7.IndexServlet   index /index  

之后 访问/index

在调试器和页面上都有相应数值

这样进行一个简单的开发

这四个函数涉及使用问题

@Override public void init(ServletConfig config) throws ServletException {System.out.println(\"init\"); } //以下的来源不同 @Override public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException { System.out.println(\"ServiceReq\"); } //有参数才触发 @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println(\"serviceHTTP\"); } //销毁 @Override public void destroy() { System.out.println(\"estroy\"); }
执行结果来看都会首先触发第一个init 根据有没有涉及传参 看一下打印了什么 最后结束是打印了estroy

这是代码执行的逻辑顺序

执行结果来看都会首先触发第一个init 根据有没有涉及传参 看一下打印了什么 最后结束是打印了estroy

这是代码执行的逻辑顺序

JAVA-EE 的数据库有三种 jdbc mybatis hebermate

以使用频率来说 主要学习mybatis

需要先下载 这些红色的代表 是有不当会产生漏洞

下载好后 在IDEA新建一个文件 将下载好的文件导入

添加进库才能引用

package com.example.demo7;import java.sql.*;public class MyselectServlet { public static void main(String[] args) throws ClassNotFoundException, SQLException { // 1. 加载MySQL JDBC驱动(MySQL 8.0+可以省略,驱动会自动注册) // 保留它是为了兼容旧代码或明确显示驱动依赖 Class.forName(\"com.mysql.cj.jdbc.Driver\"); // 2. 定义数据库连接URL // - serverTimezone=UTC 解决时区报错问题 // - 其他常用参数:useSSL=false(测试环境禁用SSL)、characterEncoding=utf8(设置编码) String url = \"jdbc:mysql://localhost:3306/demo01?serverTimezone=UTC\"; // 3. 建立数据库连接 // 参数:URL, 用户名, 密码 Connection connection = DriverManager.getConnection(url, \"root\", \"root\"); String sql = \"select * from admin\"; // 从admin表查询所有字段 // 5. 创建Statement对象(用于执行静态SQL语句) Statement statement = connection.createStatement(); // 6. 执行查询,获取结果集 ResultSet rs = statement.executeQuery(sql); // 7. 遍历结果集 while (rs.next()) { // rs.next()移动游标并判断是否有下一条数据 // 按列名获取数据(也可以使用列索引:rs.getString(1)) String username = rs.getString(\"username\"); String password = rs.getString(\"password\"); // 8. 输出结果 System.out.println(username + \":\" + password); } }}结果如下:

申明:不是真的学习开发 只是了解思路和流程 不考虑代码安全问题