java web 动态web开发基础入门学习 eclipse版(二)

前言:上一篇写到项目创建和静态页面展示,这节要写的是前端表单提交数据到后端的操作,前端的表单就不写了

一、在Java Resources的src中创建一个Package包用于管理servlet控制器

二、在包下创建servlet类,类名随便取,创建servlet 会自动继承HttpServlet类

三、seevlet类接受前端数据,根据前端表单的method类型,在类下选择doGet方法或doPost方法进行实现,servlet接受前端参数的方法就是是由request变量下getParameter(name_key),name_key是指前端表单中的name属性值。

四、创建po包进行po类管理,并在管理包下创建一个po类,po类是一个对象属性集,每一个po类都对应者一张数据表,po类中的属性和数据表中的字段需要一致。

五、创建db类,这个类完全可以不用包管理,db类主要用于数据库的链接

案列:

servlet类:

        String name = request.getParameter("uname");
        String pwd = request.getParameter("upwd");
        
        System.out.println(name);
        System.out.println(pwd);
        
        UserServer userServer = new UserServer();
        User user = userServer.sel(name, pwd);
        if (user == null)
        {
            response.sendRedirect("defeat.html");
        }
        else
        {
            response.sendRedirect("success.html");
        }

 

po类:

   private int id;
    private String name;
    private String pwd;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPwd() {
        return pwd;
    }
    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
    @Override
    public String toString() {
        return "UserPo [id=" + id + ", name=" + name + ", pwd=" + pwd + "]";
    }

 

db类:

   private static final String URL = "jdbc:mysql://localhost:3306/mybatisdb";
    private static final String NAME = "root";
    private static final String PWD = "root";
    private static final String DRIVER = "com.mysql.jdbc.Driver";
    
    static {
        try
        {
            Class.forName(DRIVER);
        }catch(ClassNotFoundException e) {
            e.printStackTrace();
        }
        
    }
    
    public static Connection getDBConnection() throws SQLException
    {
        return DriverManager.getConnection(URL, NAME, PWD);
    }

 

dao类:

   private Connection conn;
    private PreparedStatement psmt;
    private ResultSet re;
    
    public UserPo sel(String name, String pwd)
    {
        String sql = "SELECT * FROM user WHERE name = ? and pwd = ?";
        try
        {
            conn = DBConnection.getDBConnection();
            psmt = conn.prepareStatement(sql);
            psmt.setString(1, name);
            psmt.setString(2, pwd);
            re = psmt.executeQuery();
            if (re.next())
            {
                UserPo userPo = new UserPo();
                userPo.setId(re.getInt("id"));
                userPo.setName(re.getString("name"));
                return userPo;
            }
        }catch(SQLException e) {
            e.printStackTrace();
        }
        
        return null;
    }

 

service类:

    private UserDao userDao;
    public UserService() {
        // TODO Auto-generated constructor stub
        userDao = new UserDao();
    }
    public UserPo sel(String name, String pwd)
    {
        return userDao.sel(name, pwd);
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值