登录
public static boolean select(int name,int pass){ boolean flag=false; Connection connection=getConnection(); String sql="select *from users"; PreparedStatement pre; try { pre=(PreparedStatement)connection.prepareStatement(sql); ResultSet rs = pre.executeQuery(); while(rs.next()){ System.out.println(rs.getInt("idname")); if (rs.getInt("idname")==name){ if(rs.getInt("pwd")==pass){ flag=true; break; } }else { continue; } } } catch (SQLException e) { e.printStackTrace(); } return flag; }
感觉代码还是写的挺烂的,因为jdbc还是不太会用,我直接在select里进行了对账号密码是否正确的判断,返回一个布尔值,然后再login类中对那个布尔值进行判断来实现登录的操作,本来应该是写一个通用的查询类的,但现在技术时间有限,留到以后实现吧
购买
购买这里的话感觉写的更烂,目前只对一个商品进行了实现,因为我前端直接用的form表单传的数据,然后我只知道可以输入一个值然后传过去,但是商品名应该是不需要输入的,应该可以通过id传,但id怎么在后台怎么获取也还没了解过,所以我打算为每一个商品都写一个购买类,
public class Purchase extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { int count=Integer.parseInt(req.getParameter("count")); Basedao.insert(count); resp.sendRedirect("/smbsm/su.html"); // resp.sendRedirect("/smbsm/list.jsp"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } } public static void insert(int count){ try { Connection con=getConnection(); String sql="UPDATE `super`.`goods` SET `count` = ? WHERE `gname` = '美瞳' AND `price` = 20"; PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1,count); ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } }
购物车
这个就更草率了,直接通过jsp在前端嵌入java对数据库进行一个查询,然后输入出来,后续打算我是准备加一个购物车的数据库,然后在这里边遍历出来,再加一个购买按钮清除数据库的内容
这个期末作业估计就这样了,这学期从前端到后端学了一遍,虽然很多东西都不扎实,但是至少能实现一些东西了,打算暑假再把ssm学了