spring框架

SSH的框架整合

£可爱£侵袭症+ 提交于 2020-03-13 12:44:01
struts 控制用的 hibernate 操作数据库的 spring 用解耦的 第一步:先创建一个wed项目 。 第二步:配置struts2 1.添加Struts2所需要的基本jar包到 lib目录下 包名如下图: 2.在web.xml 文件里添加struts的过滤器配置如下:《提示:struts2-2.3版本》 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> <display-name>ssh</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> <filter> <filter-name>struts2</filter-name>

ssm

感情迁移 提交于 2020-03-13 09:12:46
javaWeb三层架构,就是用Spring去整合其他两个框架 表现层 业务层 持久层 SpringMVC Spring Mybatis Spring环境搭建 1.创建maven项目,不选择模板,->next 2.main->新建webapp->新建WEB-INF,并在pom.xml中添加 <packaging>war</packaging> 3.数据库: CREATE TABLE hero( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(100), ranking INT ); 4.pom.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>com.ice</groupId> <artifactId

SSM

戏子无情 提交于 2020-03-13 09:12:25
1. 项目环境准备 1.1. 技术选型 整个项目使用的 SSM 框架 SpringMVC , Spring , MyBatis , MySql 数据库, Shiro 安全框架 1.2. 使用 Maven 创建 Web 项目 1.3. 引入 maven 项目 pom 文件依赖的和插件配置 Maven 的 pom 文件集成了整个项目所需要的绝大部分框架依赖,后期其他依赖在实际开发中按需引入集合 <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>cn.zj</groupId> <artifactId>logistics_system</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> <spring.version>4

SSM的基本知识点

六眼飞鱼酱① 提交于 2020-03-13 09:11:34
### Spring Spring框架是一个容器,它的主要作用是创建和管理对象。 Spring框架实现了解耦。 Spring框架通过DI实现了IoC。 关于Spring框架,必须掌握和理解的: 1. Spring的基本概念与特性; 2. 常用的注解:通用的4个注解,自动装配的注解; 3. 关于`@Autowired`和`@Resource`的区别; 4. Spring表达式,建议课余找时间学习ONGL。 ### SpringMVC SpringMVC主要解决接收请求与处理响应的问题。 关于SpringMVC框架,必须掌握和理解的: 1. 创建SpringMVC项目,并完成配置; 2. 掌握常用注解:`@RequestMapping`、`@ResponseBody`、`@RequestParam`、`@RestController`、`@GetMapping`、`@PostMapping`、`@ExceptionHandler`; 3. 掌握转发与重定向,及转发时封装转发的数据; 4. 掌握响应JSON正文的方式; 5. 掌握拦截器的使用; 6. 掌握异常的处理。 ### MyBatis MyBatis解决了传统模式下持久层开发比较繁琐的问题。 关于MyBatis框架,必须掌握和理解的: 1. 基本的增删改查功能开发; 2. 查询时,什么时候需要自定义别名; 3.

IOC和AOP使用拓展

杀马特。学长 韩版系。学妹 提交于 2020-03-13 02:04:55
多种方式实现依赖注入 构造注入 编写测试类 public class UserServiceImpl implements UserService { // 声明接口类型的引用,和具体实现类解耦合 private UserDao dao; // 无参构造 public UserServiceImpl() { } // 用于为dao属性赋值的构造方法 public UserServiceImpl(UserDao dao) { this.dao = dao; } public void addNewUser(User user) { // 调用用户DAO的方法保存用户信息 dao.save(user); } } 在使用设值注入时,Spring通过JavaBean无参构造方法实例化对象,当我们编写带参构造方法后,java虚拟机不会再提供默认的无参构造方法,为了保证使用的灵活性,建议自行添加一个无参构造方法 配置文件代码如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www

@Autowired和@Resource的区别

依然范特西╮ 提交于 2020-03-12 16:44:11
虽然他们的用法都是 装配bean 的,但这两个注解的所属包不一样,@Autowired是属于Spring的注解,而@Resource是属于J2EE。 @Resource 默认 按照名称方式进行bean匹配,@Autowired 默认 按照类型方式进行bean匹配( 如果存在类型的多个实例就尝试使用byName匹配 )。举个例子,现在有一个A接口类,有B和C两个实现类,我们需要引用到B类,首先按照面向接口的编程思想,我们注入的bean一定是A(当然直接注入B或C也是可以的,而且这样还不用纠结是按类型还是按名称来装配,但是按照面向接口的编程思想,这样就不美了),那么使用@Resource(name = "b") A a 或者 @Autowired @Qualifier(“b”) A a(@Autowired A b,这样也是可以让其使用 byName来进行装配 的哦) 这两种就都可以达到我们的目的了。 总结:这样看来,其实在一般我们的spring类型的项目中,讨论使用@Autowired或@Resource完全是没有意义的,因为他们在实现结果上来说彼此完全是可以互相取代的,不管黑猫白猫能抓到老鼠的就是好猫,有些同学觉得 @Resource是属于J2EE,减少spring的耦合,这样代码比较优雅, 但是我个人觉得你既然都已经用spring框架了,那还谈什么减少spring的耦合

教妹学Java:Spring 入门篇

跟風遠走 提交于 2020-03-12 09:02:14
你好呀,我是沉默王二,一个和黄家驹一样身高,刘德华一样颜值的程序员(管你信不信呢)。从两位偶像的年纪上,你就可以断定我的码龄至少在 10 年以上,但实话实说,我一直坚信自己只有 18 岁,因为我有一颗好学的心。本篇文章就打算通过我和三妹对话的形式来学一学“Spring 的基础”。 教妹学 Java,没见过这么放肆的标题吧?“语不惊人死不休”,没错,本篇文章的标题就是这么酷炫,不然你怎么会点进来? 我有一个漂亮如花的妹妹(见上图),她叫什么呢?我想聪明的读者能猜得出:沉默王三,没错,年方三六。父母正考虑让她向我学习,做一名正儿八经的 Java 程序员。我期初是反对的,因为程序员这行业容易掉头发。但家命难为啊,与其反对,不如做点更积极的事情,比如说写点有趣的文章教教她。 “二哥,你怎么现在才想起来要教我学 Spring 啊?” “没办法啊,三妹,之前教妹学 Java 系列被喷的体无完肤,没办法就停滞了。今天决定走自己的路,让别人也走自己的路去。” “我就说嘛,Spring 在 Java 中占据那么重要的位置,你竟然没舍得教我,还以为你怕被我拍死在沙滩上呢?” “嗯,你天真了。” 01、Spring 简史 “二哥,据说 Spring 前后经历了 3 个时代,你能给我说说吗?” “没问题啊。” 1)石器时代 也就是 Spring 1.x 时代,一个项目看上去全都是 xml 文件

Spring Security入门教程(一)

血红的双手。 提交于 2020-03-11 18:09:54
什么是spring Security Spring Security是一个能够为基于Spring的企业应用系统提供描述性安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC( 依赖注入 ,也称 控制反转 )和AOP( 面向切面编程 )功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。 简单来说spring Security就是spring为我们提供的一个权限框架,是spring家族的一员. 目前最新版本的Spring Security为 5 .2.2 ,不过本教程使用的是稳定版的3.2.3版本。 2. Spring Security的入门案例 第一步:使用Idea创建一个maven项目 点击Finish后,项目已经创建完成,此时的项目结构如下: 第二步:导入spring Security相关jar包 在pom.xml导入spring Security的maven依赖,pom.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

微服务治理实践 | 金丝雀发布

拟墨画扇 提交于 2020-03-11 17:54:38
前言 阿里巴巴集团内部有不少故障是因为发布直接或间接引起。因此提升发布的质量,减少错误的发生,是有效减少线上故障的一个关键环节。 为什么大部分的故障和发布相关?因为发布是整个功能更新到线上的最后一个环节,一些研发过程中累计的问题,在最后发布环节才会触发。同时发布本身也是一个复杂的过程,在发布过程中,往往容易出现一些错误操作或者遗漏关键操作。 日常发布中,我们常常会有如下一些错误的想法: 这次改动的内容比较小,而且上线要求比较急,就不需要测试直接发布上线好了 发布不需要走灰度流程,快速发布上线即可 灰度发布没有什么用,就是一个流程而已,发布完就直接发布线上,不用等待观察 虽然灰度发布很重要,但是灰度环境很难搭建,耗时耗力优先级并不高 这些想法都可能让我们进行一次错误的发布。 阿里巴巴内部有安全生产三板斧概念: 可灰度、可观测、可回滚。所有研发同学必须要掌握发布系统的灰度、观测和回滚功能如何使用。 今天我们来聊聊灰度发布。 灰度发布策略 灰度发布是发布整个过程中一个非常重要的环境。目前灰度发布策略有这几种: 蓝绿发布(Blue-Green Deployment) 通过部署两套环境来解决新老版本的发布问题。如果新版本(New Version)发生问题要进行回滚的时候,直接通过切流将流量全部切到老版本(Old Version)上。 优点:升级切换和回退比发布回滚迅速 缺点:成本较高

学生管理系统(SSM简易版)总结

巧了我就是萌 提交于 2020-03-11 16:34:25
之前用 Servlet + JSP 实现了一个 简易版的学生管理系统 ,在学习了 SSM 框架之后,我们来对之前写过的项目重构一下! 技术准备 为了完成这个项目,需要掌握如下技术: Java 基础知识 前端: HTML, CSS, JAVASCRIPT, JQUERY J2EE: Tomcat, Servlet, JSP, Filter 框架: Spring , Spring MVC , MyBatis , Spring 与 MyBatis 整合 , SSM 整合 数据库: MySQL 开发工具: IDEA, Maven 开发流程 之前虽然已经使用 Servlet + JSP 完成了简单的开发,这次使用 SSM 仅仅是重构工作,但我们仍然按照商业项目的开发步骤来一步一步完成,进一步熟悉这个过程, 重复的部分我就直接复制了。 ① 需求分析 首先要确定要做哪些功能 使用 数据库 来 保存数据 能 增删改查 学生的信息 (学号,名称,年龄,性别,出生日期) ② 表结构设计 根据需求,那么只需要一个 student 表就能够完成功能了。 创建数据库:student 将数据库编码格式设置为 UTF-8 ,便于存取中文数据 DROP DATABASE IF EXISTS student; CREATE DATABASE student DEFAULT CHARACTER SET utf8;