Java实现基础登入页面

Java实现基础登入页面,第1张

Java实现基础登入页面 Mybatis和web学习的课后实 ***

·

·

·

首先我们确定我们的需求:

一:我们需要一个登入和注册的网页页面进行 *** 作

二:我们需要连接数据库查询是否有该用户,并且实现登入和注册

确定完需求我们来实 ***

首先是界面:

这里需要用到css和html前端知识

我就直接抄作业了

具体效果如上

我们主要讲一下功能的实现  首先是登入界面:

第一步我们先创建一个数据库来存放用户

这里面我们有id,username和password三个属性

我们把属性在User中创建:

 创建完成后我们需要getset和tostring;

package com.gao.polo;

public class User {
    private int id;
    private String username;
    private String password;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    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;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + ''' +
                ", password='" + password + ''' +
                '}';
    }
}

这步之后我们要思考如何实现mybatis的使用

首先配置mybatis文件

一,在maven的pom中导入相应的mybatis坐标和mysql-connector坐标: 


    
      org.mybatis
      mybatis
      3.5.2
    
    
      mysql
      mysql-connector-java
      5.1.47
    
  

然后我们要配置mybatis设置文件:

在resource下创建一个mybatis-config.xml文件

写入以下配置:







    
        
            
            
                
                
                
                
            
        
    
    
        
        


    

 注意一点:

里面的resource需要写上的是项目里面Mapper的xml映射文件的目录

完成后我们现在可以去配置Marrper文件了

基础的UserMapper.xml文件:

(注意namespace需要对应接口坐标)




    

        

 和UserMapper接口:

(建一个查询用户的接口)

(因为比较简单,所以我们这次写的Mapper用注解来实现)

public interface UserMapper {
    @Select("select * from jd_user.user_login where username=#{username} and password=#{password}")
    User loginSelect(@Param("username")String username,@Param("password") String password);
}

好我们登入工作基本的准备工作做完了

现在进行测试

先在我们的pom文件中导入一下Junit

    
      junit
      junit
      4.12
      test
    

创建test文件

对了,我们先在utils里面做一个sqlsessionfactory工厂文件

public class MybatisUtil {
    private static SqlSessionFactory sqlSessionFactory;
    static {
        try {
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public static SqlSession getSqlSession(){
        return sqlSessionFactory.openSession();
    }
}

然后在test中利用工厂文件解析出session

利用getmaaper来对我们的映射文件进行测试

public class test {

    //测试数据库是否连接成功
    @Test
    public void loginTest ()throws Exception{
        SqlSession sqlSession = MybatisUtil.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        User user = mapper.loginSelect("740803880", "000511");
        System.out.println("user = " + user);
    }
}

ok,我们看看测试结果

果然有错误!我们来找一下:

 不能解析我们的Mapper.xml文件

仔细查询后发现没有问题再看看看我们的target目录

 发现我们的Mapper下没有.xml文件

如果将静态资源放在src/main/java中,那么编译时将被maven忽略,在target目录下将没有这些资源,此处,我们将mybatis的mapper.xml放在了dal包中,方便编程查看,所以需要将该目录添加为资源目录.

  
  
    
      src/main/java
      
        ***.xml
      
    
  
 
    
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.2
        
          80
          /
        
      
    
  



导入后我们就可以在新建里创建Servlet类了

 我们创建个LoginServlet

用注解@webservlet标记一下我们的Servlet

在request申请里获得username和password

@WebServlet("/loginServlet")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
}
}

我们来看看html配置:





    
    login
    




    



处的action后面输入我们loginservlet的坐标,就映射成功了

现在我们配置servlet的代码逻辑

先利用工厂获取sqlsession

在利用sqlSession获取解析我们的mapper文件

最后再利用mapper的login查询查出用户的数据表单

SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        User user = mapper.loginSelect(username, password);

至此我们就已经完成了从用户输入的用户密码而查询出数据库的内容了

最后我们利用respond加上代码逻辑

response.setContentType("text/html;charset=utf-8");
        PrintWriter writer = response.getWriter();
        if(user !=null){
            writer.write("输入成功");
        }else{
            writer.write("登入失败");
        }

实现了账户密码的验证登入

我们来试着验证一下

 run一下tomcat

 在浏览器输入我们的网址

http://localhost/login.html

尝试一下登入

输入了个错误的账号密码

在输入正确的成功导出

至此我们的登入功能已经搞定了

这个项目是简单的基于tomcat+servlet+mybatis实现的项目,记录一下方便我们学习

共勉。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5715705.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存