源码见链接:https://pan.baidu.com/s/1cUyE_5HpTRB5zwctjwkXwg
提取码:terz
环境及工具版本信息:(Tomcat 6.0 ;JDK 1.6 ;oracle 11g ;PL/SQL developer ;eclipse ; 编码:UTF-8)
注:版本信息不一致可能会造成一些报错或无法运行,此时需要根据错误提示,百度查阅资料,修改对应版本配置信息,保证代码兼容。也可参照以下思路,自己建项目一步步调试(代码与下方部分文件名称不同,代码内容一致)
目录结构如下图:
M:模型层,bean下的所有实体类(User)。
V:视图层,jsp页面(图略)。
C:控制层,controller,主要是一些servlet。
其中控制层中,调用service层的业务方法,而业务方法中具体的数据操作则是靠调用dao层的数据库操作方法实现。
狭义理解:服务层和数据访问层在大的范围上,属于C:控制层的范畴,但有区别。
【注意事项】本例连接的是oracle数据库,需要在项目的bin文件夹下中添加odbc.jar包,并buildPath.(添加至项目,默认是到了根目录下,在服务器上运行,可能报空指针异常,可以在tomcat安装的bin目录下添加驱动包)
bean
package bean;
public class User {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public User() {
super();
}
public User(String username, String password) {
super();
this.username = username;
this.password = password;
}
}
controller层
LoginServlet
核心doget()方法
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//request获取前台页面的输入信息
String username = request.getParameter("username");
String pass = request.getParameter("password");
//创建一个User实例,接受前台获取的数据为参数
User user = new User(username,pass);
//创建服务对象,调用登录方法
IUserService userService &#