学校作业——配置ssm框架做一个简单的登陆注册

补一下blog

 

1、配置maven

指向阿里的镜像并且导入ssm框架所需的依赖

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

2、配置porn.xml

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.example</groupId>
  <artifactId>ssm</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>ssm Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <!-- spring版本号 -->
    <spring.version>5.0.2.RELEASE</spring.version>
    <!-- mybatis版本号 -->
    <mybatis.version>3.2.6</mybatis.version>
    <!-- log4j日志文件管理包版本 -->
    <slf4j.version>1.7.7</slf4j.version>
    <log4j.version>1.2.17</log4j.version>
    <c3p0.version>0.9.5.2</c3p0.version>
    <taglibs.version>1.1.2</taglibs.version>
  </properties>

  <dependencies>
    <!-- spring核心包 -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-oxm</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context-support</artifactId>
      <version>${spring.version}</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <!-- mybatis核心包 -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>${mybatis.version}</version>
    </dependency>
    <!-- mybatis/spring包 -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.2.2</version>
    </dependency>
    <!-- 导入java ee jar 包 -->
    <dependency>
      <groupId>javax</groupId>
      <artifactId>javaee-api</artifactId>
      <version>7.0</version>
    </dependency>

    <!-- 导入Mysql数据库链接jar包 -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.30</version>
    </dependency>
    <!-- 导入dbcp的jar包,用来在applicationContext.xml中配置数据库 -->
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.2.2</version>
    </dependency>
    <!-- JSTL标签类 -->
    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <!-- 日志文件管理包 -->
    <!-- log start -->
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>${log4j.version}</version>
    </dependency>


    <!-- 数据连接池 -->
    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>c3p0</artifactId>
      <version>${c3p0.version}</version>
    </dependency>

    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>${taglibs.version}</version>
    </dependency>

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>${slf4j.version}</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>${slf4j.version}</version>
    </dependency>

    <!-- 导入servlet-api/jsp -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>javax.servlet.jsp-api</artifactId>
      <version>2.3.1</version>
      <scope>provided</scope>
    </dependency>

  </dependencies>


  <build>
    <finalName>ssm</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

3、resoureces文件夹下配置数据库信息

db.properties文件配置

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/db?useSSL=true&characterEncoding=utf-8&serverTimezone=UTC
jdbc.username=   //自己的账号密码
jdbc.password=

4、resoureces文件夹下配置视图、控制器映射信息等

spring-mvc.xml文件配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
      http://www.springframework.org/schema/mvc
      http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
      http://www.springframework.org/schema/context
      http://www.springframework.org/schema/context/spring-context-4.3.xsd
      http://www.springframework.org/schema/aop
      http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
      http://www.springframework.org/schema/tx
      http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">

    <!-- 1.注解扫描位置-->
    <context:component-scan base-package="com.aroad.controller" />

    <!-- 2.配置映射处理和适配器-->
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

    <!-- 3.视图的解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/pages/" />
        <property name="suffix" value=".jsp" />
    </bean>
</beans>

5、resoureces文件夹下接口扫描包、数据库连接、映射文件加载等配置

applicationContext.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<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:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-4.3.xsd
		http://www.springframework.org/schema/aop
		http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">
    <!-- 1.配置数据库相关参数properties的属性:${url} -->
    <context:property-placeholder location="classpath:db.properties"/>

    <!-- 2.配置数据源 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${jdbc.driver}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxPoolSize" value="30"/>
        <property name="minPoolSize" value="2"/>
    </bean>

    <!-- 3.配置SqlSessionFactory对象 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <!-- 注入数据库连接池 -->
        <property name="dataSource" ref="dataSource"/>
        <!-- 扫描bean包 使用别名 -->
        <property name="typeAliasesPackage" value="com.aroad.bean"></property>

        <!--配置加载映射文件 UserMapper.xml-->
        <property name="mapperLocations" value="classpath:mapper/*.xml"/>

    </bean>

    <!-- 自动生成dao,mapper-->
    <!-- 4.配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <!-- 给出需要扫描Dao接口包 -->
        <property name="basePackage" value="com.aroad.dao"/>
        <!-- 注入sqlSessionFactory -->
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
    </bean>



    <!--自动扫描-->
    <context:component-scan base-package="com.aroad"/>


    <!-- 配置事务-->
    <!-- 5.配置事务管理器 -->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource"/>
    </bean>
    <!-- 6.开启事务注解-->
    <tx:annotation-driven></tx:annotation-driven>

</beans>

ssm框架搭建完毕可以写一个简单的接口试一试了

先写一个数据库中的bean

package com.aroad.bean;

public class User {
    public User() {
    }

    public User(int id, String username, String password) {
        this.userid = id;
        this.username = username;
        this.password = password;
    }

    public User(String username, String password) {
        this.username = username;
        this.password = password;
    }

    private int userid;
    private String username;
    private String password;

    public int getUserid() {
        return userid;
    }

    public void setUserid(int userid) {
        this.userid = userid;
    }

    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=" + userid +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                '}';
    }
}

再写一个userDao ,用于通过username查找数据库中的user

package com.aroad.dao;

import com.aroad.bean.User;

public interface UserDao {
    User findUserByUserName(String username);
}

而后在resoures下写相应的mapper.xml映射文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.aroad.dao.UserDao" >
    <select id="findUserByUserName" parameterType="String" resultType="com.aroad.bean.User">
        select * from user where username=#{username}
    </select>

</mapper>

编写Service

public interface UserService {
    boolean login(String username,String password);
}

实现Service,完成后台对数据的操作

package com.aroad.service.impl;

import com.aroad.bean.User;
import com.aroad.dao.UserDao;
import com.aroad.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserDao userDao;

    @Override
    public boolean login(String username, String password) {
        User user = userDao.findUserByUserName(username);
        return user != null && user.getPassword().equals(password);
    }
}

编写控制器

package com.aroad.controller;


import com.aroad.bean.User;
import com.aroad.service.UserService;
import com.aroad.service.impl.UserServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;

    @RequestMapping("/login.do")
    public ModelAndView login(User user){
        boolean flag = userService.login(user.getUsername(),user.getPassword());
        ModelAndView modelAndView = new ModelAndView();
        if (flag) modelAndView.setViewName("../ok");
        else modelAndView.setViewName("../failure");
        return modelAndView;
    }
}

jsp方面关键代码

<form action="/user/login.do" method="post">
    username:<input name="username" type="text">
    password:<input name="password" type="password">
    <input type="submit" value="login">
</form>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,我可以回答这个问题。首先,需要在配置文件中配置数据库连接信息,包括数据库的URL、用户名和密码。然后,在Spring配置文件中配置数据源和MyBatis的SqlSessionFactory。接着,编写DAO层的代码,使用MyBatis进行数据库操作。在Service层中,编写登陆注册的逻辑代码,包括密码加密和校验等。最后,在Controller层中,编写处理请求的代码,包括参数的获取和返回结果的封装。这样就完成了一个基本的登陆注册功能。 ### 回答2: 使用SSM框架编写登录注册逻辑的详细步骤如下: 1. 配置环境:安装Java JDK、Maven、Tomcat,并建立相应的文件目录结构。 2. 配置数据库:创建一个数据库,例如MySQL,并在数据库中创建一个用户表,包含用户名和密码字段。 3. 配置Spring:在pom.xml文件中添加Spring相关依赖,包括Spring Core、Spring MVC和Spring JDBC。 4. 配置MyBatis:在pom.xml文件中添加MyBatis相关依赖,包括MyBatis Core和MyBatis Spring。 5. 创建实体类:创建一个用户实体类,包含用户名和密码的属性,并使用注解标注实体类和属性与数据库表和字段的映射关系。 6. 编写Mapper接口:创建一个用户Mapper接口,定义查询和插入用户信息的方法。 7. 编写Mapper映射文件:创建一个用户Mapper映射文件,定义用户查询和插入的SQL语句。 8. 创建Service接口和实现类:创建一个用户Service接口,定义处理用户登录注册逻辑的方法,并在实现类中实现接口方法。 9. 编写Spring配置文件:创建Spring的配置文件applicationContext.xml,配置数据源、事务管理器、MyBatis的SqlSessionFactory和MapperScannerConfigurer等。 10. 编写Spring MVC配置文件:创建Spring MVC的配置文件springmvc.xml,配置视图解析器、拦截器、处理器映射和处理器适配器等。 11. 创建Controller类:创建用户Controller类,编写处理登录注册请求的方法,并将数据传递给前端页面进行展示。 12. 编写web.xml文件:配置DispatcherServlet、ContextLoaderListener和字符编码等相关配置。 13. 编写登录注册页面:创建登录注册的jsp页面,并使用表单提交用户的登录注册信息。 14. 运行项目:将项目部署到Tomcat服务器上,并启动Tomcat服务器,通过浏览器访问登录注册页面,进行登录注册操作。 通过以上步骤,就可以使用SSM框架编写一个简单登录注册逻辑,其中包括配置文件的使用和相关组件的配置和编写。 ### 回答3: SSM框架是指Spring + SpringMVC + MyBatis组合,下面是具体实现一个登陆注册逻辑的步骤,包括配置文件的详细说明: 1. 创建一个Maven项目,并添加相应依赖库。 2. 配置web.xml文件,配置DispatcherServlet,将其映射到"/"路径。 3. 创建一个Spring配置文件spring-context.xml,配置Spring的核心容器。 4. 在spring-context.xml中配置数据源,例如使用c3p0连接池。 5. 配置MyBatis的SqlSessionFactoryBean,指定数据源和Mapper扫描路径。 6. 创建MyBatis的Mapper接口,定义登陆注册相关的数据库操作方法。 7. 创建Mapper.xml文件,实现Mapper接口中定义的方法对应的SQL查询。 8. 创建SpringMVC的配置文件spring-mvc.xml。 9. 配置视图解析器,配置扫描控制器,配置静态资源映射等。 10. 创建一个Controller类,实现登陆注册逻辑。 11. 在Controller中使用自动注入的方式引入Mapper接口,通过调用Mapper中的方法实现数据操作。 12. 在Controller类中配置请求映射路径和请求参数,编写相应的请求处理方法。 13. 创建登陆注册的视图页面,用于展示表单和接收用户输入。 14. 配置SpringMVC的视图解析器,将视图页面映射到相应的URL路径。 15. 创建一个数据库表,存储用户的登陆注册信息。 16. 编写登陆注册的业务逻辑,包括验证用户输入、根据用户名获取用户信息等。 17. 配置日志文件,方便查看和记录系统运行的日志信息。 18. 配置运行环境,例如Tomcat服务器等。 总结: 以上是使用SSM框架实现一个简单登陆注册逻辑的详细步骤,其中包括配置web.xml、spring-context.xml、spring-mvc.xml等文件,创建Mapper接口和Mapper.xml文件,编写Controller类和视图页面等。通过这些步骤,我们可以完成一个基本的登陆注册功能。当然,具体的实现可能涉及更多细节和业务逻辑,上述步骤只是一个简单的示例,具体情况还需要根据实际需求进行适当修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值