entity层
UserInfo
实体类
package cn.blog.entity; import java.util.Date; /** * Created by Happy on 2017-06-30. */ public class UserInfo { private Integer userCode; private String userName; private String userPwd; private Date lastLoginTime; private boolean isUse; //alt+insert public Integer getUserCode() { return userCode; } public void setUserCode(Integer userCode) { this.userCode = userCode; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserPwd() { return userPwd; } public void setUserPwd(String userPwd) { this.userPwd = userPwd; } public Date getLastLoginTime() { return lastLoginTime; } public void setLastLoginTime(Date lastLoginTime) { this.lastLoginTime = lastLoginTime; } public boolean isUse() { return isUse; } public void setUse(boolean use) { isUse = use; } }
dao层
IUserInfoDAO
判定用户是否登录成功
package cn.blog.dao; import cn.blog.entity.UserInfo; /** * Created by Happy on 2017-06-30. */ public interface IUserInfoDAO { //判定用户是否登录成功! public boolean isLogin(UserInfo info) throws Exception; }
Impl层
UserInfoDAOImpl
package cn.blog.dao.iimpl; import cn.blog.dao.BaseDao; import cn.blog.dao.IUserInfoDAO; import cn.blog.entity.UserInfo; import org.junit.Test; import java.sql.ResultSet; /** * Created by Happy on 2017-06-30. */ public class UserInfoDAOImpl extends BaseDao implements IUserInfoDAO { @Test public void testIsLogin(){ UserInfo info=new UserInfo(); info.setUserCode(11); info.setUserPwd("123"); try { boolean flag = isLogin(info); System.out.println(flag); } catch (Exception e) { e.printStackTrace(); } } public boolean isLogin(UserInfo info) throws Exception { boolean flag=false; //根据用户名和密码查看复合条件的记录有几条 String sql="select count(1) as UserCode from userInfo where UserCode=? and UserPwd=?"; Object[] paras={info.getUserCode(),info.getUserPwd()}; ResultSet rs = executeQuery(sql, paras); if (rs.next()){ if (rs.getInt("UserCode")>0){ flag=true; } } return flag; } }
Servlet层
UserInfoServlet
package cn.blog.servlet; import cn.blog.dao.IUserInfoDAO; import cn.blog.dao.iimpl.UserInfoDAOImpl; import cn.blog.entity.UserInfo; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * Created by Happy on 2017-06-30. */ public class UserInfoServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //write code here please ,oK? //使用dao实现类,和数据库交互的入口 IUserInfoDAO dao=new UserInfoDAOImpl(); //接收用户提交的用户名和密码 String userCode=request.getParameter("userCode"); String userPwd=request.getParameter("userPwd"); //构建用户对象 UserInfo info=new UserInfo(); //测试用户名是否获取到 System.out.println(userCode+"==================="); try { //给用户名赋值 info.setUserCode(Integer.parseInt(userCode)); //给密码赋值 info.setUserPwd(userPwd); //根据装配好的用户对象作为参数,调度dao的方法,判定登录成功还是失败 boolean flag = dao.isLogin(info); if (flag){ //success request.getRequestDispatcher("/BlogHtTemplate-master/html/main.html").forward(request,response); }else{ //失败 response.sendRedirect("/BlogHtTemplate-master/html/index.html"); } } catch (Exception e) { //返回登录 response.sendRedirect("/BlogHtTemplate-master/html/index.html"); } // dao.isLogin(); //跳转 } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } }
entity层
BlogInfo
package cn.blog.entity; /** * Created by Happy on 2017-07-02. * 博客实体 */ public class BlogInfo { private Integer blogId; private String blogAuthor; private String blogAddress; private Boolean blogDel; public Integer getBlogId() { return blogId; } public void setBlogId(Integer blogId) { this.blogId = blogId; } public String getBlogAuthor() { return blogAuthor; } public void setBlogAuthor(String blogAuthor) { this.blogAuthor = blogAuthor; } public String getBlogAddress() { return blogAddress; } public void setBlogAddress(String blogAddress) { this.blogAddress = blogAddress; } public Boolean getBlogDel() { return blogDel; } public void setBlogDel(Boolean blogDel) { this.blogDel = blogDel; } }
dao层
IBlogInfoDAO
package cn.blog.dao; import cn.blog.entity.BlogInfo; import java.util.List; /** * Created by Happy on 2017-07-02. */ public interface IBlogInfoDAO { //01.显示所有博客记录 public List<BlogInfo> getAll() throws Exception; //02.添加博客 public boolean addBlog(BlogInfo info) throws Exception; //为什么我不传一个int类型编号,而要传递内容 //03.修改博客 public boolean editBlog(BlogInfo info) throws Exception; }
impl层
BlogInfoDAOImpl
package cn.blog.dao.iimpl; import cn.blog.dao.BaseDao; import cn.blog.dao.IBlogInfoDAO; import cn.blog.entity.BlogInfo; import org.junit.Test; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; /** * Created by Happy on 2017-07-02. */ public class BlogInfoDAOImpl extends BaseDao implements IBlogInfoDAO { //02.添加博客 public boolean addBlog(BlogInfo info) throws Exception { boolean flag=false; String sql="insert into bloginfo(blogAuthor,blogAddress,blogDel) values(?,?,0)"; Object[] para={info.getBlogAuthor(),info.getBlogAddress()}; int count = executeUpdate(sql, para); if (count>0){ flag=true; } return flag; } //3.修改博客 public boolean editBlog(BlogInfo info) throws Exception { boolean flag=false; String sql="update blogInfo set blogAuthor=?,blogAddress=? where blogId=?"; System.out.println("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"); Object[] paras={info.getBlogAuthor(),info.getBlogAddress(),info.getBlogId()}; int count = executeUpdate(sql, paras); if (count>0){ flag=true; } return flag; } @Test public void testall() throws Exception { List<BlogInfo> list= getAll(); for (BlogInfo info:list) { System.out.println(info.getBlogAuthor()); } } public List<BlogInfo> getAll() throws Exception { List<BlogInfo> list=new ArrayList<BlogInfo>(); String sql="select * from bloginfo where blogDel=0"; ResultSet rs = executeQuery(sql); while(rs.next()){ BlogInfo info=new BlogInfo(); info.setBlogId(rs.getInt("blogId")); info.setBlogAuthor(rs.getString("blogAuthor")); info.setBlogAddress(rs.getString("blogAddress")); info.setBlogDel(rs.getBoolean("blogDel")); list.add(info); } return list; } }
servlet层
BlogInfoServlet
package cn.blog.servlet; import cn.blog.dao.IBlogInfoDAO; import cn.blog.dao.iimpl.BlogInfoDAOImpl; import cn.blog.entity.BlogInfo; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; /** * Created by Happy on 2017-07-02. */ public class BlogInfoServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //0.post 请求乱码 request.setCharacterEncoding("utf-8"); //1.实例化博客dao IBlogInfoDAO dao=new BlogInfoDAOImpl(); //拆解出action的值 String action=request.getParameter("action"); if (action!=null&&action!=""){ if (action.equals("add")){ //添加 BlogInfo blogInfo=new BlogInfo(); String blogAuthor=request.getParameter("blogAuthor"); String blogAddress=request.getParameter("blogAddress"); blogInfo.setBlogAuthor(blogAuthor); blogInfo.setBlogAddress(blogAddress); try { System.out.println("AAAAAAAAAAAAAAAAAAAAAAAAAAAAA========"); boolean flag = dao.addBlog(blogInfo); if (flag){ //添加成功 //1.走到列表 request.getRequestDispatcher("/BlogHtTemplate-master/html/main.html").forward(request,response); //2.关闭自身 } } catch (Exception e) { e.printStackTrace(); } }else if (action.equals("list")){ //2.获取泛型 try { List<BlogInfo> blogList = dao.getAll(); //你要想在jsp页面中显示,放入作用域 request.setAttribute("blogList",blogList); request.getRequestDispatcher("/BlogHtTemplate-master/html/blog/bloglist2.jsp").forward(request,response); } catch (Exception e) { e.printStackTrace(); } }else if (action.equals("update")){ //修改 System.out.println("===================================++++++++++++++++"); BlogInfo blogInfo=new BlogInfo(); String blogAuthor=request.getParameter("blogAuthor"); String blogAddress=request.getParameter("blogAddress"); int blogId=Integer.parseInt(request.getParameter("blogId")); blogInfo.setBlogAuthor(blogAuthor); blogInfo.setBlogAddress(blogAddress); blogInfo.setBlogId(blogId); try { boolean flag = dao.editBlog(blogInfo); if (flag){ request.getRequestDispatcher("/BlogHtTemplate-master/html/main.html").forward(request,response); } } catch (Exception e) { e.printStackTrace(); } } } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } }