1. 浅谈Java-MVC(个人理解)
l Model层存放数据实体
l Dao层访问数据库返回结果集给Controller层
l ModelLogic(Model分支)用来进行业务逻辑处理,并进行一系列的判断
l Controller层将结果返回给View层
l View层根据返回处理过后的结果集将数据显示出来
个人将Model细化成三层:
l Model层存放数据实体
l Dao访问数据库
l ModelLogic层进行业务逻辑处理
2. 数据交互
l jdbc连接数据库
l 执行sql语句,返回结果集对象
l 将返回的结果集对象进行判断(业务逻辑处理),返回给controller层
l controller层将较为简单的结果返回给View层
l View层将数据显示给用户
2.1连接数据库
try {
Class.forName(driver);// 加载MySQL驱动
// 下面建立驱动程序与数据库的连接
conn = DriverManager.getConnection(url,user, password);
System.out.println("连接数据库服务器成功");
stmt = conn.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
2.2执行sql语句,返回结果集对象
public String getUser(String id) throws SQLException {
String Sql = "SELECT * FROM bookms.user where u_count = ? ";
String pass = null;
try {
PreparedStatement pr = conn.prepareStatement(Sql);
pr.setString(1, id);
rs = pr.executeQuery();
while (rs.next()) {
pass = rs.getString("u_password");
}
} catch (Exception e) {
e.printStackTrace();
}
return pass;
}
2.3
public String getPass(String user) {
UserDao userdao = new UserDao();
String pass = null;
try {
pass = userdao.getUser(user);
} catch (SQLException e) {
e.printStackTrace();
}
return pass;
}
2.4
public boolean checkInfo(String user, String pass, boolean identity) {
UserDaoImp imp = new UserDaoImp();
if(imp.getPass(user)!=null && imp.getPass(user).equals(pass)) {
System.out.println("密码正确");
return true;
}
System.out.println("错误");
return false;
}
2.5将结果返回view
网友评论