毕业实习Day2——JDBC的封装和对SSM初步认识

本文介绍了在Java Web环境中,作者通过JDBC进行数据库操作的实践,回顾了JDBC的连接过程,探讨了实体类和工具类的封装。接着,作者对SSM框架进行了初步认识,解释了Spring、SpringMVC和Mybatis各自的作用,以及在项目开发中的配置和目录结构。

在第一天将Java Web环境搭建完成后,先用JDBC 在控制台命令行上实现模拟登录和增删改查进行练手,同时回顾了数据库连接过程的七个步骤

数据库连接过程

(1)获取驱动
(2)创建连接
(3)编写sql
(4)获取prepareStatement
(5)执行sql语句,并返回结果
(6)处理结果集
(7)关闭资源

//1.获取驱动
Class.forName("com.mysql.jdbc.Driver") ;
//2.创建连接127.0.0.1 /Localhost 自动生成返回值:Ctrlc+Alt+V
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/java3?useSSL=true&characterEncoding=utf-8&user=root&password=123456");
//3.编写sql语句
String sql = "select * from tb_user" ;
//4.获取对象
prst = conn.prepareStatement(sql);
//5.执行并返回结果 - executeUpdate 返回整数,适用于增删改; executeQuery  - 返回结果集,查询
rs = prst.executeQuery();
//6.处理结果
while(rs.next()){
    System.out.println("用户id为:"+rs.getInt(1));
    System.out.println("用户姓名为:"+rs.getString(2));
    System.out.println("用户密码为:"+rs.getString(3));

//7.关闭资源
if(rs !=null){
    try {
        rs.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}
if(prst !=null){
    try {
        prst.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
} if(conn !=null){
    try {
        conn.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

同时还复习了Java的三大特性:封装、继承、多态以及实体层的封装结构

实体类封装

实体类模型映射数据库字段,其中实体层的封装结构分为四步
(1)属性封装
(2)Get set
(3)构造方法
(4)toString方法重写

先是对属性进行封装

public class User {    
//1.属性封装    
private int id;//用户id    
private  String name;//用户名    
private  String pwd;//用户密码    
}

进行get set

在空白处右击,点击Generat,也可以通过快捷键Alt+Insert进入Generat

在这里插入图片描述

选择getter and setter
在这里插入图片描述
按住shift全选

在这里插入图片描述

完成get set

之后的构造方法和toString方法重写都可以从Generate中获取

最后的代码

//2.get set

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getPwd() {
    return pwd;
}

public void setPwd(String pwd) {
    this.pwd = pwd;
}


//3.构造方法

public User(int id, String name, String pwd) {
    this.id = id;
    this.name = name;
    this.pwd = pwd;
}

public User() {
}


//4.toString 方法重写

@Override
public String toString() {
    return "User{" +
            "id=" + id +
            ", name='" + name + '\'' +
            ", pwd='" + pwd + '\'' +
            '}';
}

有了实体类的封装,同是也要对使用的工具进行封装,便有工具类的封装。

工具类封装

这里则是对数据库的连接

package util;

import java.sql.*;

//工具类
public class DBUtil {
    private static String driver = "com.mysql.jdbc.Driver";
    private static String url = "jdbc:mysql://localhost:3306/java3?useSSL=true&characterEncoding=utf-8";
    private static String user = "root";
    private static String password = "wen199877";

    static {
        try {
            //1.获取驱动
            Class.forName(driver);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    //2.创建连接
    public static java.sql.Connection get_Conn() throws SQLException {
        Connection conn =  DriverManager.getConnection(url, user, password);
        System.out.println("成功连接");
        return conn;
    }
    //3.关闭资源
    public static void get_CloseConn(ResultSet rs , PreparedStatement prst,Connection conn) throws SQLException {
        if (rs != null) {
            rs.close();
        }
        if (prst != null) {
            prst.close();
        }
        if (conn != null) {
            conn.close();
        }

    }
        //单元测试/白盒测试
//        public static void main (String[] args){
//            try {
//                get_Conn();
//            } catch (SQLException e) {
//                e.printStackTrace();
//            }
//
//        }
}

SSM的初步认识

现如今众多java应用中,Spring框架是必须的。Struts2框架与Spring的整合问题日益凸显,而Spring MVC作为新一代的MVC框架,因其可以与Spring框架无缝整合的特性收到了越来越多的欢迎。另一方面,Hibernate框架在面对需要存储过程或者复杂SQL时显得力不从心,不能提供高效的数据库控制。而Mybatis框架作为持久层的框架,虽然需要自己编写SQL语句,但是其对高并发高响应的支持,以及对动态SQL和动态绑定的支持使其脱颖而出。

所以,SSM框架(Spring + Spring MVC +Mybatis)逐渐取代了SSH框架(Spring + Struts2 + Hibernate)。

概念

1.Spring是非常经典的java bean容器,它可以非常有效率的实现对java bean(也包括分离出的DAO和Service)的管理。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

2.SpringMVC作为控制层的web框架,全方面替代了Struts2,在action层面进行拦截,使用注解的方式来定义controller中的antion,在xml中配置自动扫描即可实现业务的跳转。并且由于是spring大家族的产品,对spring的兼容性几乎到达百分之百兼容。继承于Spring,MVC是Model、View、Controller。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

3.Mybatis是当下较为流行的持久层框架,而所有的持久性框架,都是在JDBC的基础上进行高度封装。其中的优点:是对JDBC进行了完美的封装,保留了动态sql的编写,善于处理复杂的多表关系,采用xml配置sql语句的方式,sql形式多样,便于扩展和后期维护。

项目的开发过程

1.用的是IDEA开发工具,可以直接新建Maven项目
2.在新建的项目中添加所需要的文件/文件夹

新建四个包:pojo,service,dao,controller,其所存放的分别是:

pojo: 存放自定义的java类。如:paper类,user类,book类等,每个类的属性设为private,并提供public属性的getter/setter方法让外界访问
service:定义接口,包含系统所提供的功能。(之后还会在service包下再新建impl包)。
dao:定义接口,包含与数据库进行交互的功能。
controller:控制器,负责接收页面请求,转发和处理。
在resource包下新建Directory:“mapper”(用于存放xxxMapper.xml文件)和“spring”(用于存放spring-xxx.xml配置文件),新建文件:“jdbc.properties”(mysql数据库配置文件),”log4j.properties”(日志输出配置文件),”mybatis-config.xml”(mybatis框架配置文件)。

最终完整项目目录如下

在这里插入图片描述

3.自定义Paper类

在这之前要对项目的pom.xml文件进行配置,在此文件中配置项目所需要的jar包

4.利用tomcat进行项目部署

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值