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地址和主机名

    这篇文章主要介绍了基于Java实现获取本地IP地址和主机名,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • spring单元测试之@RunWith的使用详解

    spring单元测试之@RunWith的使用详解

    这篇文章主要介绍了spring单元测试之@RunWith的使用详解,@RunWith 就是一个运行器,@RunWith(JUnit4.class) 就是指用JUnit4来运行,
    @RunWith(SpringJUnit4ClassRunner.class),让测试运行于Spring测试环境,需要的朋友可以参考下
    2023-12-12
  • MyBatis如何调用存储过程

    MyBatis如何调用存储过程

    这篇文章主要介绍了MyBatis如何调用存储过程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Springboot2.0自适应效果错误响应过程解析

    Springboot2.0自适应效果错误响应过程解析

    这篇文章主要介绍了Springboot2.0自适应效果错误响应过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Java设计模块系列之书店管理系统单机版(三)

    Java设计模块系列之书店管理系统单机版(三)

    这篇文章主要为大家详细介绍了Java单机版的书店管理系统设计模块和思想第三章,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • 四个Java常见分布式锁的选型和性能对比

    四个Java常见分布式锁的选型和性能对比

    当涉及到分布式系统中的并发控制和数据一致性时,分布式锁是一种常见的解决方案,本文将对几种常见的分布式锁实现原理、实现示例、应用场景以及优缺点进行详细分析,需要的可以参考一下
    2023-05-05
  • Spring中@Value设置默认值问题解决

    Spring中@Value设置默认值问题解决

    本文主要介绍了Spring中@Value设置默认值问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • java遍历机制性能的比较详解

    java遍历机制性能的比较详解

    这篇文章主要给大家介绍了关于java遍历机制性能比较的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • Elasticsearch查询及聚合类DSL语句宝典示例详解

    Elasticsearch查询及聚合类DSL语句宝典示例详解

    这篇文章主要为大家介绍了Elasticsearch查询及聚合类DSL语句宝典示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • @Scheduled在springboot中的使用方式

    @Scheduled在springboot中的使用方式

    这篇文章主要介绍了@Scheduled在springboot中的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08

最新评论