网站建设 商标,wordpress ie兼容插件,短视频推广方式有哪些,百度sem竞价推广Javaweb小练习---在JSP中使用Javabean访问数据库完成用户信息的简单添加 目录
Javaweb小练习---在JSP中使用Javabean访问数据库完成用户信息的简单添加 0.创建数据库
1.
在resources目录下创建db.properties文件
2.
/**
* 获取链接与释放资源的工具类--JdbcUtil类
*/
3…Javaweb小练习---在JSP中使用Javabean访问数据库完成用户信息的简单添加 目录
Javaweb小练习---在JSP中使用Javabean访问数据库完成用户信息的简单添加 0.创建数据库
1.
在resources目录下创建db.properties文件
2.
/**
* 获取链接与释放资源的工具类--JdbcUtil类
*/
3.
/*** 实体类---建立该类实现记录信息对象化*/
4.在User类基础上建立UserDao类封装基本的数据库操作
5.创建数据提交页面----a.jsp
6.计算加工页面-----b.jsp
7.显示信息页面-----c.jsp
8.项目结构 0.创建数据库
-- 创建数据库test
-- 创建数据库test
CREATE DATABASE IF NOT EXISTS test DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;-- 切换到test数据库
USE test;-- 创建数据表user
CREATE TABLE IF NOT EXISTS user (userid VARCHAR(10) PRIMARY KEY,username VARCHAR(20) NOT NULL,sex VARCHAR(10) NOT NULL
) ENGINEINNODB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_unicode_ci;SELECT *FROM user 1.
在resources目录下创建db.properties文件 drivercom.mysql.cj.jdbc.Driver
urljdbc:mysql://localhost:3306/test
usernameroot
password123456
2.
/**
* 获取链接与释放资源的工具类--JdbcUtil类
*/
package jdbc;import java.io.InputStream;
import java.sql.*;
import java.util.Properties;/*** 获取链接与释放资源的工具类--JdbcUtil类*/
public class JdbcUtil{private static String driver;private static String url;private static String username;private static String password;private static Properties properties new Properties();public JdbcUtil() {}static {try {//设计该工具类的静态初始化器中的代码该代码在装入类时执行且执行一次//加载属性文件并在JdbcUtil雷中可读取其中的属性值properties.load(JdbcUtil.class.getClassLoader().getResourceAsStream(db.properties));driver properties.getProperty(driver);url properties.getProperty(url);username properties.getProperty(username);password properties.getProperty(password);Class.forName(driver);}catch (Exception e){//throw new ExceptionInInitializerError(e);System.out.println(e);}}//设计获得连接对象的方法getConnectionpublic static Connection getConnection() throws Exception{Connection connectionnull;try{//1-读取db.properties文件Properties properties new Properties();InputStream in JdbcUtil.class.getResourceAsStream(/db.properties);properties.load(in);//2-读取属性String driverproperties.getProperty(driver);String urlproperties.getProperty(url);String usernameproperties.getProperty(username);String passwordproperties.getProperty(password);//3-注册驱动Class.forName(driver);//4-获取连接connection DriverManager.getConnection(url,username,password);//5-日志打印连接信息System.out.println(连接信息: url username password);} catch (Exception e) {e.printStackTrace();throw new RuntimeException(数据库连接失败请检查连接参数是否正确);}return connection;}//设计释放结果集、语句和连接方法free()public static void free(ResultSet resultSet, Statement statement,Connection connection)throws Exception{if (resultSet!null){resultSet.close();}if (statement!null){statement.close();}if (connection!null){connection.close();}}
}
3.
/** * 实体类---建立该类实现记录信息对象化 */
package vo;/*** 实体类---建立该类实现记录信息对象化*/
public class User {private String userid;private String username;private String sex;public User() {}public User(String userid, String username, String sex) {this.userid userid;this.username username;this.sex sex;}public String getUserid() {return userid;}public void setUserid(String userid) {this.userid userid;}public String getUsername() {return username;}public void setUsername(String username) {this.username username;}public String getSex() {return sex;}public void setSex(String sex) {this.sex sex;}
}4.在User类基础上建立UserDao类封装基本的数据库操作
package dao;import jdbc.JdbcUtil;
import vo.User;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;/*** 在User类基础上建立UserDao类封装基本的数据库操作*/
public class UserDao {//1-向数据库中添加用户的方法addUser user将对象user插入数据表中public void add(User user)throws Exception{Connection connection JdbcUtil.getConnection();String sqlinsert into user(userid,username,sex) values(?,?,?);PreparedStatement preparedStatementconnection.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);preparedStatement.setString(1,user.getUserid());preparedStatement.setString(2,user.getUsername());preparedStatement.setString(3,user.getSex());preparedStatement.executeUpdate();JdbcUtil.free(null,preparedStatement,connection);}//2-修改数据库用户记录方法update(User user),将对象user进行修改public void update(User user)throws Exception{Connection connection JdbcUtil.getConnection();String sqlupdate user set username?,sex? where userid?;PreparedStatement preparedStatementconnection.prepareStatement(sql);preparedStatement.setString(1,user.getUsername());preparedStatement.setString(2,user.getSex());preparedStatement.setString(3,user.getUserid());preparedStatement.executeUpdate();JdbcUtil.free(null,preparedStatement,connection);}//3-删除数据库用户记录方法delete(String userId),根据userId值进行删除记录public void delete(String userId)throws Exception{Connection connectionJdbcUtil.getConnection();String sqldelete from user where userid?;PreparedStatement preparedStatementconnection.prepareStatement(sql);preparedStatement.setString(1,userId);preparedStatement.executeUpdate();JdbcUtil.free(null,preparedStatement,connection);}//4-根据id查询用户方法findUserByIdpublic User findUserById(String userId)throws Exception{Connection connectionJdbcUtil.getConnection();User usernull;String sqlselect * from user where userid?;PreparedStatement preparedStatementconnection.prepareStatement(sql);preparedStatement.setString(1,userId);ResultSet resultSetpreparedStatement.executeQuery();if (resultSet.next()){usernew User();user.setUserid(resultSet.getString(userid));user.setUsername(resultSet.getString(username));user.setSex(resultSet.getString(sex));}JdbcUtil.free(resultSet,preparedStatement,connection);return user;}//5-查询全部用户的方法QueryAll()public ListUserQueryAll()throws Exception{Connection connectionJdbcUtil.getConnection();ListUser userListnew ArrayList();String sqlselect * from user;PreparedStatement preparedStatementconnection.prepareStatement(sql);ResultSet resultSetpreparedStatement.executeQuery();while (resultSet.next()){User usernew User();user.setUserid(resultSet.getString(userid));user.setUsername(resultSet.getString(username));user.setSex(resultSet.getString(sex));userList.add(user);}JdbcUtil.free(resultSet,preparedStatement,connection);return userList;}
}5.创建数据提交页面----a.jsp
%--Created by IntelliJ IDEA.User: CaptainDongDate: 2023/4/9Time: 11:59To change this template use File | Settings | File Templates.
--%
% page contentTypetext/html;charsetUTF-8 languagejava %
%page pageEncodingUTF-8%
!DOCTYPE html
html
headtitle数据提交页面/title
/head
body
form actionb.jsp methodposttabletrtd编号/tdtdinput typetext nameuserid required/td/trtrtd姓名/tdtdinput typetext nameusername required/td/trtrtd性别/tdtdinput typetext namesex required/td/trtrtd colspan2button typesubmit提交/buttonbutton typereset重置/button/td/tr/table
/form
/body
/html
6.计算加工页面-----b.jsp
% page importvo.User %
% page importdao.UserDao %
% page importjava.util.List %
% page importjava.sql.SQLException %%--Created by IntelliJ IDEA.User: CaptainDongDate: 2023/4/9Time: 11:59To change this template use File | Settings | File Templates.
--%
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitle计算加工页面/title
/head
body
%request.setCharacterEncoding(UTF-8);String user_idrequest.getParameter(userid);String user_namerequest.getParameter(username);String user_sexrequest.getParameter(sex);User usernew User(user_id,user_name,user_sex);UserDao userDaonew UserDao();//userDao.add(user);// 实现插入try {userDao.add(user);} catch (SQLException e) {e.printStackTrace();}ListUserusersuserDao.QueryAll();request.setAttribute(users_list,users);
%
//转到c.jsp网页
jsp:forward pagec.jsp/jsp:forward
/body
/html7.显示信息页面-----c.jsp
% page importjava.util.List %
% page importvo.User %%--Created by IntelliJ IDEA.User: CaptainDongDate: 2023/4/9Time: 11:59To change this template use File | Settings | File Templates.
--%
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitle显示信息页面/title
/head
body
%ListUserusers(ListUser) (request.getAttribute(users_list));for (int i0;iusers.size();i){User userusers.get(i);String abc编号user.getUserid()_姓名user.getUsername()_性别user.getSex();out.println(abc);}
%
/body
/html8.项目结构