Spring+MongoDB实现登录注册功能

 更新时间:2017年07月10日 08:54:37   作者:Coder_py  
这篇文章主要为大家详细介绍了Spring+MongoDB实现登录注册功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Spring,Spring MVC,MongoDB实现登录注册 的具体代码,供大家参考,具体内容如下

工程目录: 

Spring配置文件:

 <beans xmlns="http://www.springframework.org/schema/beans" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
   xmlns:context="http://www.springframework.org/schema/context" 
   xmlns:mongo="http://www.springframework.org/schema/data/mongo" 
   xsi:schemaLocation="http://www.springframework.org/schema/context  
   http://www.springframework.org/schema/context/spring-context-3.0.xsd  
   http://www.springframework.org/schema/data/mongo  
   http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd  
   http://www.springframework.org/schema/beans  
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">  
  <!-- 开启自动注入,进行包扫描 -->
  <context:component-scan base-package="com" />
  <mongo:mongo host="127.0.0.1" port="27017"/> 
  
  <!-- 配置MongoTemplate-->
  <bean id="mongoTemplate" class="org.springframework.data.document.mongodb.MongoTemplate">  
  <constructor-arg ref="mongo"/> 
  <!-- 指定数据库名字--> 
  <constructor-arg name="databaseName" value="data1"/>  
  </bean> 
  
  <!-- 映射转换器,扫描back-package目录下的文件,根据注释,把它们作为mongodb的一个collection的映射 --> 
  <mongo:mapping-converter base-package="com.model" /> 
  
  <!--普通注入--> 
  <bean id="userDaoImpl" class="com.userdaoimpl.UserDaoImpl">  
  <property name="mongoTemplate" ref="mongoTemplate"></property>  
 </bean>  
  
  <context:annotation-config /> 
  
  <bean
 class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
 <!-- 配置视图解析器,将ModelAndView及字符串解析为具体的页面 -->
 <bean id="viewResolver"
 class="org.springframework.web.servlet.view.InternalResourceViewResolver">
 <property name="prefix" value="/" />
 <property name="suffix" value=".jsp" />
 </bean>
 
 
 
</beans> 

Web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
 xmlns="http://java.sun.com/xml/ns/javaee" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 <display-name></display-name> 
 <welcome-file-list>
 <welcome-file>login.jsp</welcome-file>
 </welcome-file-list>
 
 <servlet>
 <servlet-name>spring</servlet-name>
 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 <init-param>
 <param-name>contextConfigLocation</param-name>
 <param-value>classpath:applicationContext.xml</param-value>
 </init-param>
 </servlet>
 <servlet-mapping>
 <servlet-name>spring</servlet-name>
 <url-pattern>/</url-pattern>
 </servlet-mapping>
 <!-- 统一字符编码 -->
 <filter>
 <filter-name>encoding</filter-name>
 <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
 <init-param>
 <param-name>encoding</param-name>
 <param-value>UTF-8</param-value>
 </init-param>
 </filter>
 
 <filter-mapping>
 <filter-name>encoding</filter-name>
 <url-pattern>*.do</url-pattern>
 </filter-mapping>
</web-app> 

Model层:

package com.model;

import org.springframework.data.annotation.Id;
import org.springframework.data.document.mongodb.mapping.Document;


@Document(collection = "p3") 
public class User {
 @Id
 String name;
 String password;
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 public String getPassword() {
 return password;
 }
 public void setPassword(String password) {
 this.password = password;
 }
 
 
 
} 

UserDao:

 package com.userdao;

import com.model.User;

public interface UserDao {
 public void insert(User user);
 public boolean find(String name,String password);
 public void save(User user);
 
 
} 

UserDaoImpl:

package com.userdaoimpl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.document.mongodb.MongoTemplate;
import org.springframework.data.document.mongodb.query.Criteria;
import org.springframework.data.document.mongodb.query.Query;

import com.model.User;
import com.userdao.UserDao;

public class UserDaoImpl implements UserDao{
 
 @Autowired
 MongoTemplate mongoTemplate;
 
 @Override
 public void insert(User user) {
 getMongoTemplate().insert(user);
 
 }
 
 
 
 @Override
 public boolean find(String name, String password) {
 Criteria criteria=Criteria.where("name").is(name).and("password").in(password);
 User user = getMongoTemplate().findOne(new Query(criteria), User.class);
 if (user==null) {
 return false;
 }
 return true;
 }

 @Override
 public void save(User user) {
 getMongoTemplate().save(user);
 
 }


 public MongoTemplate getMongoTemplate() {
 return mongoTemplate;
 }

 public void setMongoTemplate(MongoTemplate mongoTemplate) {
 this.mongoTemplate = mongoTemplate;
 }
 
 
 
} 

LoginController:

package com.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.userdaoimpl.UserDaoImpl;


@Controller
public class LoginController {
 @Autowired
 UserDaoImpl userDaoImpl;
 
 
 @RequestMapping("/login")
 public String login(String name,String password,Model model) {
 boolean rs = userDaoImpl.find(name, password);
 if (rs==true) {
 return "index";
 }
 return "erro";
 
 }


 public UserDaoImpl getUserDaoImpl() {
 return userDaoImpl;
 }


 public void setUserDaoImpl(UserDaoImpl userDaoImpl) {
 this.userDaoImpl = userDaoImpl;
 }
} 

RegisterController:

package com.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.model.User;
import com.userdaoimpl.UserDaoImpl;


@Controller
public class RegisterController {
 @Autowired 
 UserDaoImpl userDaoImpl;
 @RequestMapping("/register")
 public String register(String name,String password,Model model) {
 User user = new User();
 user.setName(name);
 user.setPassword(password);
 userDaoImpl.save(user);
 return "login";
 }
 public UserDaoImpl getUserDaoImpl() {
 return userDaoImpl;
 }
 public void setUserDaoImpl(UserDaoImpl userDaoImpl) {
 this.userDaoImpl = userDaoImpl;
 }
 
 
 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • java获取ip地址示例

    java获取ip地址示例

    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了
    2014-04-04
  • Java如何把数组转换为ArrayList

    Java如何把数组转换为ArrayList

    这篇文章主要介绍了Java如何把数组转换为ArrayList,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • SpringBoot内部外部配置文件加载顺序解析

    SpringBoot内部外部配置文件加载顺序解析

    这篇文章主要介绍了SpringBoot内部外部配置文件加载顺序解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • springboot项目访问静态资源的配置代码实例

    springboot项目访问静态资源的配置代码实例

    这篇文章主要介绍了springboot项目访问静态资源的配置代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Springboot几种任务的整合方法

    Springboot几种任务的整合方法

    这篇文章主要介绍了Springboot几种任务的整合方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • java JVM原理与常识知识点

    java JVM原理与常识知识点

    在本文中小编给大家分享的是关于java的JVM原理和java常识,有兴趣的朋友们可以学习下
    2018-12-12
  • SpringBoot在生产快速禁用Swagger2的方法步骤

    SpringBoot在生产快速禁用Swagger2的方法步骤

    这篇文章主要介绍了SpringBoot在生产快速禁用Swagger2的方法步骤,使用注解关闭Swagger2,避免接口重复暴露,非常具有实用价值,需要的朋友可以参考下
    2018-12-12
  • 关于replaceFirst使用时的注意事项

    关于replaceFirst使用时的注意事项

    这篇文章主要介绍了关于replaceFirst使用时的注意事项,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • java“与”符号写法与用法

    java“与”符号写法与用法

    在本篇文章里小编给大家整理的是关于java“与”符号写法与用法,对此有需要的朋友们可以学习下。
    2020-02-02
  • 浅谈java中为什么实体类需要实现序列化

    浅谈java中为什么实体类需要实现序列化

    下面小编就为大家带来一篇浅谈java中为什么实体类需要实现序列化。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论