失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > SSM框架实现用户查询 注册 登录 最新腾讯Java高级面试题总结

SSM框架实现用户查询 注册 登录 最新腾讯Java高级面试题总结

时间:2022-01-06 18:30:29

相关推荐

SSM框架实现用户查询 注册 登录 最新腾讯Java高级面试题总结

2、导入依赖坐标

在pom.xml里面导入坐标,我的pom文件内容如下:

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

<project xmlns=“/POM/4.0.0” xmlns:xsi=“/2001/XMLSchema-instance”

xsi:schemaLocation=“/POM/4.0.0 /xsd/maven-4.0.0.xsd”>

4.0.0

cn.star

myssm

1.0-SNAPSHOT

war

myssm Maven Webapp

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<piler.source>1.8</piler.source>

<piler.target>1.8</piler.target>

<spring.version>5.0.2.RELEASE</spring.version>

<slf4j.version>1.6.6</slf4j.version>

<log4j.version>1.2.12</log4j.version>

<mysql.version>5.1.6</mysql.version>

<mybatis.version>3.4.5</mybatis.version>

org.aspectj

aspectjweaver

1.6.8

org.springframework

spring-aop

${spring.version}

org.springframework

spring-context

${spring.version}

org.springframework

spring-web

${spring.version}

org.springframework

<artifactId

spring-webmvc

${spring.version}

org.springframework

spring-test

${spring.version}

org.springframework

spring-tx

${spring.version}

org.springframework

spring-jdbc

${spring.version}

junit

junit

4.12

mysql

mysql-connector-java

${mysql.version}

javax.servlet

servlet-api

2.5

provided

javax.servlet.jsp

jsp-api

2.0

provided

jstl

jstl

1.2

log4j

log4j

${log4j.version}

org.slf4j

slf4j-api

${slf4j.version}

org.slf4j

slf4j-log4j12

${slf4j.version}

org.mybatis

mybatis

${mybatis.version}

org.mybatis

mybatis-spring

1.3.0

c3p0

c3p0

0.9.1.2

jar

compile

myssm

maven-clean-plugin

3.1.0

maven-resources-plugin

3.0.2

maven-compiler-plugin

3.8.0

maven-surefire-plugin

2.22.1

maven-war-plugin

3.2.2

maven-install-plugin

2.5.2

maven-deploy-plugin

2.8.2

3、创建java和resources文件夹

在main目录下面创建java和resources文件夹,并设置相应文件

4、创建类和接口文件

在java文件夹下创建类文件,所需的类文件有以下几个:

存放javabean的 domain 包下的用户类:cn.star.domain.Users

数据访问层 dao 包下的用户 dao 接口:cn.star.dao.UsersDao

业务层 service 包下的 UsersService 接口:cn.star.service.UsersService

业务层 service 包下的 service 实现类,继承service接口:cn.star.service.impl.UsersServiceImpl

控制层 controller 包下的用户控制层UsersController类:cn.star.controller.UsersController

【1】创建存放 javabean 类文件:cn.star.domain.Users

package cn.star.domain;

import java.io.Serializable;

/**

〈一句话功能简述〉

〈用户类〉

@author OneStar

@create /11/8

@since 1.0.0

*/

public class Users implements Serializable {

private Integer id;

private String username;

private String PASSWORD;

public Integer getId() {

return id;

}

public void setId(Integer 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 “Users{” +

“id=” + id +

“, username='” + username + ‘’’ +

“, PASSWORD='” + PASSWORD + ‘’’ +

‘}’;

}

}

【2】创建数据访问层 UsersDao 接口:cn.star.dao.UsersDao

这里只需要编写接口就可以了,框架会帮我们生成一个代理对象

package cn.star.dao;

import cn.star.domain.Users;

import java.util.List;

/**

〈一句话功能简述〉

〈数据访问层 UsersDao 接口〉

@author OneStar

@create /11/8

@since 1.0.0

*/

public interface UsersDao {

//查询所有用户

public List findUsers();

//用户注册

public void insertUsers(Users users);

//用户登录

public Users login(Users users);

}

【3】创建业务层 UsersService 接口:cn.star.service.UsersService

package cn.star.service;

import cn.star.domain.Users;

import java.util.List;

/**

〈一句话功能简述〉

〈业务层接口〉

@author OneStar

@create /11/9

@since 1.0.0

*/

public interface UsersService {

//查询所有用户

public List findUsers();

//用户注册

public void insertUsers(Users users);

//用户登录

public boolean login(Users users);

}

【4】Service 实现类:cn.star.service.impl.UsersServiceImpl

继承 UsersService 接口

package cn.star.service.impl;

import cn.star.domain.Users;

import cn.star.service.UsersService;

import java.util.List;

/**

〈一句话功能简述〉

〈Service 实现类〉

@author OneStar

@create /11/9

@since 1.0.0

*/

public class UsersServiceImpl implements UsersService {

@Override

public List findUsers() {

System.out.println(“业务层:查询用户”);

return null;

}

@Override

public void insertUsers(Users users) {

System.out.println(“业务层:用户注册”);

}

@Override

public boolean login(Users users) {

System.out.println(“业务层:用户登录”);

}

}

【5】创建用户控制层UsersController类:cn.star.controller.UsersController

5、创建配置文件

在resources文件夹下创建多个配置文件,主要有:

spring相关配置:spring.xml

springmvc相关配置:spring-mvc.xml

mybatis相关配置:mybatis.xml

日志相关配置:log4j.properties

【1】spring.xml

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

<beans xmlns=“/schema/beans”

xmlns:xsi=“/2001/XMLSchema-instance”

xmlns:context=“/schema/context”

xmlns:aop=“/schema/aop”

xmlns:tx=“/schema/tx”

xsi:schemaLocation="/schema/beans

/schema/beans/spring-beans.xsd

/schema/context

/schema/context/spring-context.xsd

/schema/aop

/schema/aop/spring-aop.xsd

/schema/tx

/schema/tx/spring-tx.xsd">

【2】spring-mvc.xml

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

<beans xmlns=“/schema/beans”

xmlns:mvc=“/schema/mvc”

xmlns:context=“/schema/context”

xmlns:xsi=“/2001/XMLSchema-instance”

xsi:schemaLocation="/schema/beans

/schema/beans/spring-beans.xsd

/schema/mvc

/schema/mvc/spring-mvc.xsd

/schema/context

/schema/context/spring-context.xsd">

【3】mybatis.xml

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

【4】log4j.properties

Set root category priority to INFO and its only appender to CONSOLE.

#log4j.rootCategory=INFO, CONSOLE debug info warn error fatal

log4j.rootCategory=info, CONSOLE, LOGFILE

Set the enterprise logger category to FATAL and its only appender to CONSOLE.

.apache.axis.enterprise=FATAL, CONSOLE

CONSOLE is set to be a ConsoleAppender using a PatternLayout.

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender

log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout

log4j.appender.CONSOLE.layout.ConversionPattern=%d{ISO8601} %-6r [%15.15t] %-5p %30.30c %x - %m\n

LOGFILE is set to be a File appender using a PatternLayout.

log4j.appender.LOGFILE=org.apache.log4j.FileAppender

log4j.appender.LOGFILE.File=d:\axis.log

log4j.appender.LOGFILE.Append=true

log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout

log4j.appender.LOGFILE.layout.ConversionPattern=%d{ISO8601} %-6r [%15.15t] %-5p %30.30c %x - %m\n

【5】目录结构

至此,整个目录结构如下

三、整合框架编写

========

1、编写spring框架

【1】配置注解扫描

在spring.xml中配置注解扫描,加上以下配置:

<context:component-scan base-package=“cn.star”>

<context:exclude-filter type=“annotation” expression=“org.springframework.stereotype.Controller” />

</context:component-scan>

【2】为service实现类添加注解

在UsersServiceImpl类中添加注解,把service交给IOC容器管理

@Service(“usersService”)

public class UsersServiceImpl implements UsersService {…}

【3】测试spring框架

这里只做用户查询测试,创建测试类:cn.star.test.springtest

package cn.star.test;

import cn.star.service.UsersService;

import org.junit.Test;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

/**

〈一句话功能简述〉

〈测试类〉

@author OneStar

@create /11/11

@since 1.0.0

*/

public class springtest {

@Test

public void Test(){

//加载配置文件

ApplicationContext ac = new ClassPathXmlApplicationContext(“classpath:spring.xml”);

//获取对象

UsersService us = (UsersService) ac.getBean(“usersService”);

//调用方法

us.findUsers();

}

}

运行,打印以下信息则搭建成功:

2、编写 SpringMVC 框架

【1】配置 web.xml

配置前端控制器

加载spring-mvc.xml配置文件

启动服务器,创建Servlet

配置过滤器解决中文乱码

dispatcherServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:spring-mvc.xml

1

dispatcherServlet

/

characterEncodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

UTF-8

characterEncodingFilter

/*

【2】配置 spring-mvc.xml

开启注解扫描,只扫描 controller

配置视图解析器

过滤静态资源

开启SpringMVC注解支持

<context:component-scan base-package=“cn.star”>

<context:include-filter type=“annotation” expression=“org.springframework.stereotype.Controller” />

</context:component-scan>

<mvc:resources location=“/css/” mapping=“/css/**” />

<mvc:resources location=“/images/” mapping=“/images/**” />

<mvc:resources location=“/js/” mapping=“/js/**” />

mvc:annotation-driven/

【3】测试SpringMVC

编写用户控制层

编写index.jsp页面

编写跳转页面

1. 编写UsersController用户控制层

package cn.star.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

/**

〈一句话功能简述〉

〈用户控制层〉

@author OneStar

@create /11/9

@since 1.0.0

*/

@Controller

@RequestMapping(“/users”)

public class UsersController {

@RequestMapping(“/findUsers”)

public String findUsers(){

System.out.println(“表现层:查询用户”);

return “Users”;

}

}

2. 编写index.jsp页面

<%@ page contentType=“text/html;charset=UTF-8” language=“java” %>

Title

查询用户

3. 编写跳转页面

在 WEB-INF 目录下新建 pages 目录,pages 目录下创建 Users.jsp 页面,编写 Users.jsp

<%@ page contentType=“text/html;charset=UTF-8” language=“java” isELIgnored=“false” %>

<%@ taglib prefix=“c” uri=“/jsp/jstl/core” %>

Title

查询所有用户

4. 部署Tomcat项目并测试

部署好后运行,点击测试查询链接,跳转到查询用户界面,SpringMVC配置成功

3、Spring 整合 SpringMVC 框架

使用spring框架整合springmvc框架,目的就是能够使用 controller 层方法调用 service 业务层方法,那要如何实现呢?分析如下:

浏览器发送请求,通过web.xml中配置的前端控制器加载springmvc.xml配置文件

在springmvc.xml配置文件中配置Spring的监听器,默认只加载WEB-INF目录下的spring.xml配置文件

将service注入controller,调用service对象的方法进行测试

【1】配置web.xml

配置Spring的监听器和文件路径

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

classpath:spring.xml

【2】service注入controller

修改 UsersController 类,将service注入controller,调用service对象的方法进行测试,修改后如下:

package cn.star.controller;

import cn.star.service.UsersService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

/**

〈一句话功能简述〉

〈用户控制层〉

@author OneStar

@create /11/9

@since 1.0.0

*/

@Controller

@RequestMapping(“/users”)

public class UsersController {

@Autowired

private UsersService usersService;

@RequestMapping(“/findUsers”)

public String findUsers(){

System.out.println(“表现层:查询用户”);

//调用service对象的方法进行测试

usersService.findUsers();

return “Users”;

}

}

【3】测试运行

点击测试查询链接后,在后台打印一下信息,说明spring成功整合springmvc

4、编写 mybatis 框架

【1】配置mybatis.xml配置文件

在configuration标签内添加以下配置:

【2】编写UserDao类

public interface UsersDao {

//查询所有用户

@Select(“select * from users”)

public List findUsers();

//用户注册

@Insert(“INSERT INTO USERS (username,PASSWORD) VALUES(#{username},#{PASSWORD})”)

如果觉得《SSM框架实现用户查询 注册 登录 最新腾讯Java高级面试题总结》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。