Spring Framework Part4 self-summeries-a simplified MVC framework
1.关于Spring Framework 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:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<context:component-scan base-package="com.littlepage"></context:component-scan>
</beans>
context:component-scan 表示扫描package,扫描com.littlepage包下的package
2.关于目录结构

3.测试层开始,测试层模拟入口,也就是类似的jsp提交
package com.littlepage.test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.littlepage.controller.LoginController;
public class Main {
public static void main(String[] args) {
ClassPathXmlApplicationContext cpx=new ClassPathXmlApplicationContext("applicationContext.xml");
LoginController loginController = cpx.getBean("loginController",LoginController.class);
boolean isLogin=loginController.testLogin("root", "root");
if(isLogin) {
System.out.println("Login Success");
}else {
System.out.println("Login Failed");
}
cpx.close();
}
}
4.与jsp相连的层是controller层,从controller层开始接入service层,这边是controller层的内容
package com.littlepage.controller; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import com.littlepage.service.LoginService; @Controller
public class LoginController { @Autowired
private LoginService loginService; public boolean testLogin(String name,String password) {
return loginService.testLogin(name,password);
}
}
5.关于service层的验证
package com.littlepage.service; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import com.littlepage.dao.GetNameAndPassword;
import com.littlepage.pojo.User; @Service
public class LoginService { @Autowired
GetNameAndPassword getNameAndPassword; public boolean testLogin(String name, String password) {
User user=getNameAndPassword.getUser();
if(user.getName().equals(name)&&user.getPassword().equals(password)) return true;
return false;
} }
6.service层与dao层连,dao有一个orm映射,与pojo层相连
package com.littlepage.dao; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import com.littlepage.pojo.User; @Repository
public class GetNameAndPassword { @Autowired
private User user; public User getUser() {
return user;
}
}
7.pojo层注意,是一个prototype的scope,属性用@Value进行赋值
package com.littlepage.pojo; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component; @Component
@Scope("prototype")
public class User { @Value("root")
private String name;
@Value("root")
private String password; public User() {
} public User(String name, String password) {
super();
this.name = name;
this.password = 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;
} }
8.运行,测试结果无误
Spring Framework Part4 self-summeries-a simplified MVC framework的更多相关文章
- Spring MVC Framework 注解
ControllerAdvice Spring MVC Framework会把 @ControllerAdvice注解内部使用 @ExceptionHandler.@InitBinder.@Model ...
- WebWork2和Spring MVC Framework的比较
http://daihaixiang.blog.163.com/blog/static/3830134200711411515336/ WebWork2和Spring MVC Framework的比较 ...
- 理解ASP.NET MVC Framework Action Filters
原文:http://www.cnblogs.com/darkdawn/archive/2009/03/13/1410477.html 本指南主要解释action filters,action filt ...
- ASP.NET MVC Framework
ASP.NET MVC Framework是微软在ASP.NET中所添加的一组类库,这组类库可以使用Model-View-Controller的设计模式来开发ASP.NET的应用程序.它与现有的ASP ...
- Karma - MVC Framework for Unity3D
Karma is an MVC framework for Unity3D. Because of how Unity is structured, it actually turns out to ...
- How to create a site with AJAX enabled in MVC framework.
How to create a site with AJAX enabled in MVC framework. The Project illustrates how to create a web ...
- 【转】Code Your Own PHP MVC Framework in 1 Hour
原文: https://www.codeproject.com/Articles/1080626/Code-Your-Own-PHP-MVC-Framework-in-Hour --------- ...
- TreeFrog Framework : High-speed C++ MVC Framework for Web Application http://www.treefrogframework.org
TreeFrog Framework : High-speed C++ MVC Framework for Web Application http://www.treefrogframework.o ...
- Please set registry key HKLM\Microsoft\.NET Framework\InstallRoot to point to the .NET Framework
安装.NET程序时会提示“Please set registry key HKLM\Microsoft\.NET Framework\InstallRoot to point to the .NET ...
随机推荐
- java之中PriorityQueue实现原理(具有优先级的队列)
使用大顶堆无限制大小.如果用顺序表实现,插入的时候麻烦,如果用链表(无序)实现得到最大优先级数据的时候麻烦.使用堆可以使两者得到中和.Lucene使用小顶堆定长实现,对于大量数据处理有利.
- Jmeter(八)乱码处理
发贴的内容和标题在进行参数化之后, 由于包含中文, 情理之中地出现了乱码(得意地笑, 坐等你跳坑中.)
- java里poi操作Excel工具类【我改】
参考原文: https://www.cnblogs.com/yizhang/p/7244917.html 我改: package test; import java.io.File; import j ...
- zk 文件存储
zk 有 2 种文件,快照和事务日志,快照是某一时刻的全量数据,事务日志中记录了数据的修改事件. 快照的文件名是 snapshot.zxid,zxid 是当前最大的事务 id // org.apach ...
- 阶段3 2.Spring_07.银行转账案例_10 使用动态代理实现事务控制
回到事物的案例中 我们现在希望用代码比较精简的这个AccountServiceImpl这个类.而不是一堆事物的AccountServiceImpl_OLD这个类 新建BeanFactory类 Acco ...
- Visual Studio 2017 远程调试
当你将.NET程序发布到不同机子时候,想要进行调试,但机子不足以安装VS或安装VS麻烦,可以考虑使用远程调试,这里以C#项目为例,asp.net方法略有不同 原理: 首先安装VS远程调试工具,有俩种安 ...
- SQL Server 批量创建作业(备份主分区)
一. 需求背景 在我的数据库实例中,有很多类似下图所示的数据库,这些数据库的名称是有规律的,每个数据库包含的表都是相同的,其中2个表是类似流水记录的表,表的数据量会比较大,占用的空间有几十G到上百G不 ...
- HTML DOM Document对象 元素对象 属性对象 事件对象
DOM Document对象 DOM 元素 对象 DOM 属性 对象 DOM 事件 菜鸟教程上 总结挺全的,就不多废话,链接点进去即可.. 后期对经常用到的会在此更新一些总结..... 开学了...自 ...
- 描述什么是springboot
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作<Expert One-On-One J2EE Developme ...
- echarts 饼图-->如何修改legend模板?
首先需要在初始化图表的方法中过滤一下数据 ,将你需要的 名称 所占百分比 所占数量 筛选出来 let dataFilter = [ { value: 20, name: "未知" ...