Java Web实现MySQL数据库增删改查
JavaWeb案例:实现数据库增删改查功能
一、创建数据库与表
创建JavaWeb项目TestStudent:
1.在WEB-INF里创建lib目录,添加数据库驱动jar包: 2.在web目录里创建META-INF子目录,在里面创建数据源配置文件context.xml 3.在src里创建net.lcn.dbutil包,在里面创建ConnectionManager类
package net.lcn.dbutil; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import java.sql.Connection; import java.sql.SQLException; public class ConnectionManager { /** * 私有化方法,拒绝实例化 */ private ConnectionManager(){ } /** * 获取数据库连接静态方法 * @return */ public static Connection getConnection(){ //定义数据库连接 Connection conn = null; try { // 定义、初始化上下文 Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/student"); conn = ds.getConnection(); } catch (NamingException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } //返回数据库连接 return conn; } }
4.用MVC模式来改造TestStudent项目,添加栏目实体类Student,添加栏目数据访问接口StudentDao及其实现类StudentDaoImpl等操作。 (1)添加栏目实体类Student
package net.lcn.bean; public class Student { private int id; private String name; private String gender; private int age; private int telephone; 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 getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public int getTelephone() { return telephone; } public void setTelephone(int telephone) { this.telephone = telephone; } @Override public String toString() { return "stu{" + "id=" + id + ", name=" + name + + ", gender=" + gender + + ", age=" + age + ", telephone=" + telephone + }; } }
(2)添加栏目数据访问接口StudentDao:
package net.lcn.dao; import net.lcn.bean.Student; import net.lcn.dbutil.ConnectionManager; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; public class StudentDao { /** * 查询全部学生 */ public List<Student> findAllStudents(){ List<Student> students = new ArrayList<>(); try { Connection conn = ConnectionManager.getConnection(); String strSQL = "select * from student"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(strSQL); while (rs.next()){ Student student = new Student(); student.setId(rs.getInt("id")); student.setName(rs.getString("name")); student.setGender(rs.getString("gender")); student.setAge(rs.getInt("age")); student.setTelephone(rs.getString("telephone")); //将学生实体类添加到栏目列表 students.add(student); } } catch (SQLException e) { e.printStackTrace(); } //返回栏目列表 return students; } public static void main(String[] args){ StudentDao studentDao = new StudentDao(); List<Student> students = studentDao.findAllStudents(); if (students.size() == 0){ System.out.println("没有学生"); }else { System.out.println("学生数为:"+ students.size()); } } }
上一篇:
IDEA上Java项目控制台中文乱码