JDBC+MVC项目开发模式
1、创建用户,属性私有化。
package entity;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 上午11:26:19
*/
public class User {
private String id;
private String username;
private String pwd;
private String sex;
private int age;
private String phone;
private String email;
private String idcard;
private String addr;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getIdcard() {
return idcard;
}
public void setIdcard(String idcard) {
this.idcard = idcard;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public User(String id, String username, String pwd, String sex, int age, String phone, String email, String idcard,
String addr) {
super();
this.id = id;
this.username = username;
this.pwd = pwd;
this.sex = sex;
this.age = age;
this.phone = phone;
this.email = email;
this.idcard = idcard;
this.addr = addr;
}
public User() {
}
@Override
public String toString() {
return "User [id=" + id + ", username=" + username + ", pwd=" + pwd + ", sex=" + sex + ", age=" + age
+ ", phone=" + phone + ", email=" + email + ", idcard=" + idcard + ", addr=" + addr + "]";
}
}
2、通过控制器调用功能方法
package controller;
import entity.User;
import model.DeleteModel;
import model.LoginModel;
import model.RegeditModel;
import model.SelectModel;
import model.UpdateModel;
/**
*@author ShanHai:控制层
*@version 创建时间:2021年9月9日 上午11:56:16
*/
public class UserController {
/**
* 找到用户注册的业务模型,并执行业务方法
* @param user
* @return
*/
public boolean regedit(User user){
RegeditModel model = new RegeditModel();
return model.UserRegedit(user);
}
public boolean login(String name,String pwd){
LoginModel model = new LoginModel();
return model.userLogin(name, pwd);
}
public boolean delete(int age){
DeleteModel model =new DeleteModel();
return model.UserDelect(age);
}
public boolean select(String name){
SelectModel model =new SelectModel();
return model.UserSelect(name);
}
public boolean update(int uage){
UpdateModel model =new UpdateModel();
return model.UserUpdate(uage);
}
}
3、创建操作功能方法
package model;
import java.util.UUID;
import entity.User;
import util.JDBCUtil;
/**
*
* @author ShanHai:用户注册模型层
* @version 创建时间:2021年9月9日 上午11:31:02
*/
public class RegeditModel {
/**
* 注册用户的方法
*
* @param user
* @return
*/
public boolean UserRegedit(User user) {
boolean isOk = false;
// 生成一个32位的随机字符串用于id主键
String id = (UUID.randomUUID() + "").replace("-", "");
String sql = "insert into t_user values('" + id + "','" + user.getUsername() + "','" + user.getPwd() + "','"
+ user.getSex() + "'," + user.getAge() + ",'" + user.getPhone() + "','" + user.getEmail() + "','"
+ user.getIdcard() + "','" + user.getAddr() + "')";
int i = JDBCUtil.executeSQL(sql);
if (i > 0) {
isOk = true;
}
return isOk;
}
}
package model;
import java.sql.ResultSet;
import java.sql.SQLException;
import util.JDBCUtil;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午1:12:36
*/
public class LoginModel {
/**
* 用户登录的方法
* @param uname
* @param pwd
* @return
*/
public boolean userLogin(String uname,String pwd){
boolean isOk = false;
String sql ="select * from t_user where username = '"+uname+"' and pwd = '"+pwd+"'";
ResultSet rs = JDBCUtil.search(sql);
try {
isOk = rs.next();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return isOk;
}
}
package model;
import util.JDBCUtil;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午5:27:58
*/
public class UpdateModel {
public Boolean UserUpdate(int uage){
boolean isOk = false;
String sql ="update t_user set pwd = '123' where age ='"+uage+"'";
int i = JDBCUtil.executeSQL(sql);
if(i>0){
isOk=true;
}
return isOk;
}
}
package model;
import util.JDBCUtil;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午1:31:11
*/
public class DeleteModel {
/**
* 删除用户的方法
* @param age
* @return
*/
public boolean UserDelect(int age){
boolean isOk = false;
String sql = "delete from t_user where age ='"+age+"'";
int i = JDBCUtil.executeSQL(sql);
if(i>0){
isOk=true;
}
return isOk;
}
}
package model;
import java.sql.ResultSet;
import java.sql.SQLException;
import util.JDBCUtil;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午2:14:59
*/
public class SelectModel {
/**
* 查询用户的方法
* @return
*/
public boolean UserSelect(String uname){
boolean isOk = false;
String sql = "select * from t_user where username= '"+uname+"'";
ResultSet i = JDBCUtil.search(sql);
try {
isOk = i.next();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return isOk;
}
}
4、通过测试类测试方法
package view;
import controller.UserController;
import entity.User;
/**
* @author ShanHai:视图层
* @version 创建时间:2021年9月9日 下午12:00:03
*/
public class RegeditView {
public static void main(String[] args) {
UserController controller = new UserController();
User u = new User(null, "admin", "123456", "男", 20, "12322312", "232456123@qq.com", "6105254587212",
"吉林省长春市");
if (controller.regedit(u)) {
System.out.println("注册用户成功");
} else {
System.out.println("注册用户失败");
}
}
}
package view;
import java.util.Scanner;
import controller.UserController;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午1:21:19
*/
public class LoginView {
public static void main(String[] args) {
UserController controller =new UserController();
boolean flag = true;
while(flag){
System.out.println("用户登录");
System.out.print("请输入用户名:");
Scanner sc =new Scanner(System.in);
String name = sc.next();
System.out.print("请输入密码:");
String pwd = sc.next();
if(controller.login(name, pwd)){
System.out.println("登陆成功!进入主页!");
flag =false;
}else{
System.out.println("登陆失败,请重新登陆!");
}
}
}
}
package view;
import controller.UserController;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午5:28:07
*/
public class UpdateView {
public static void main(String[] args) {
UserController controller = new UserController();
if(controller.update(15)){
System.out.println("修改成功");
}else{
System.out.println("修改失败");
}
}
}
package view;
import controller.UserController;
import model.DeleteModel;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午1:36:53
*/
public class DeleteView {
public static void main(String[] args) {
UserController controller =new UserController();
if(controller.delete(20)){
System.out.println("删除成功");
}else{
System.out.println("删除失败");
}
}
}
package view;
import java.util.Scanner;
import controller.UserController;
/**
*@author ShanHai:
*@version 创建时间:2021年9月9日 下午2:36:50
*/
public class SelectView {
public static void main(String[] args) {
UserController controller = new UserController();
boolean flag = true;
while(flag){
System.out.print("请输入需要查询的用户名:");
Scanner sc =new Scanner(System.in);
String name = sc.next();
if(controller.select(name)){
System.out.println("找到了用户名为:"+name+"的用户");
flag = false;
}else{
System.out.println("未找到该用户");
}
}
}
}