- 博客(22)
- 收藏
- 关注
原创 SpringMVC学习自用(五)
一、什么是SPringleMVC?二、第一个SpringMVC程序三、RestFul和控制器四、数据处理和跳转五、JSON详解前后端分离时代:后端部署后端,提供接口。json:前端独立部署,负责渲染后端的数据。5.1 基本概念5.1.1 什么是JSONJSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换
2021-08-27 16:39:20
153
原创 SpringMVC学习自用(四)
一、什么是SPringleMVC?二、第一个SpringMVC程序三、RestFul和控制器四、数据处理和跳转4.1 结果跳转方式4.1.1 ModelAndView设置ModelAndView对象 , 根据view的名称 , 和视图解析器跳到指定的页面 .页面 : {视图解析器前缀} + viewName +{视图解析器后缀}<!-- 视图解析器 --><bean class="org.springframework.web.servlet.view.InternalR
2021-08-27 10:38:37
149
原创 SpringMVC学习自用(二)
一、什么是SPringleMVC?二、第一个SpringMVC程序2.1 配置版SpringMVCweb.xml:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="htt
2021-08-24 10:27:50
138
原创 SpringMVC学习自用(一)
一、什么是SPringleMVC?1.1 回顾MVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。是将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object
2021-08-21 10:02:39
170
原创 Spring自用学习 (九)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配 五、使用注解开发六、代理模式七、AOP八、整合Mybatis九、九、声明式事务9.1 回顾事务事务在项目开发过程非常重要,涉及到数据的一致性的问题,不容马虎!事务管理是企业级应用程序开发中必备技术,用来确保数据的完整性和一致性。事务就是把一系列的动作当成一个独立的工作单元,这些动作要么全部完成,要么全部不起作用。事务的ACID原则:原子性:事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全
2021-08-18 10:32:50
130
原创 Spring自用学习 (八)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配 五、使用注解开发六、代理模式七、AOP八、整合Mybatis8.1 回顾Mybatis导入包:<?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
2021-08-17 17:54:08
152
原创 Spring自用学习 (七)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配 五、使用注解开发六、代理模式七、AOP7.1 什么是AOP?AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重
2021-08-17 10:36:01
134
原创 Spring自用学习 (六)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配 五、使用注解开发六、代理模式为什么要学代理模式?因为这就是SpringAOP的底层。【SpringAOP和SpringMVC】代理模式的分类:静态代理和动态代理。6.1 静态代理角色分析:抽象角色:一般会使用接口或者抽象类来解决。真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作。客户:访问代理对象的人。例子:Host.java:package com.kuan
2021-08-16 10:28:15
106
原创 Spring自用学习 (五)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配五、使用注解开发5.1 @Component//等价于<bean id="user" class="com.kuang.pojo.User"/>//@Component 组件@Componentpublic class User { public String name = "zhou";}@Component:组件,放在类上,说明这个类被Spring管理了,就是bean。5.1.2 衍
2021-08-15 10:06:16
145
原创 Spring自用学习 (四)
一、Spring学习准备二、IOC理论推导三、依赖注入四、Bean的自动装配自动装配是Spring满足bean依赖的一种方式。Spring会在上下文中自动寻找bean,并自动给bean装配属性。在Spring中有三种装配的方式:1.在xml中显示的配置。2.在java中显示配置。3.隐式的自动装配bean。【重要】4.1 测试1、新建两个实体类,Cat Dogpublic class Cat { public void shout() { System.o
2021-08-14 10:10:12
225
原创 Spring自用学习 (三)
一、Spring学习准备二、IOC理论推导三、依赖注入6.1 构造器注入参考二、IOC理论推导中的2.4。6.2 Set方式注入【重点】依赖注入:本质上是Set注入。依赖:bean对象的创建依赖于容器。注入:bean对象中的所有属性,由容器来注入。【环境搭建】注意:要求被注入的属性 , 必须有set方法 , set方法的方法名由set + 属性首字母大写 , 如果属性是boolean类型 , 没有set方法 , 是 is .Address.java:package com.kuang
2021-08-14 09:07:42
179
原创 Spring自用学习 (二)
一、Spring学习准备二、IOC理论推导2.1 之前开发流程:1.UserDao接口2.UserDaoImpl实现类3.UserService业务接口4.UserServiceImpl业务实现类在之前的业务中,用户的需求可能会影响我们原来的代码,我们需要根据用户的需求去修改源代码。如果程序代码量十分大,修改一次的成本代价十分昂贵。我们使用一个Set接口实现 //利用set进行动态实现值的注入。 public void setUserDao(UserDao userDao)
2021-08-11 16:25:06
123
原创 Spring自用学习 (一)
一、Spring学习准备1.1 导包:Spring下载地址:https://github.com/spring-projects/spring-framework导入web-mvc:**<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --><dependency> <groupId>org.springframework</groupId>
2021-08-11 09:32:30
129
原创 Mybatis学习自用总结(狂神说Mybatis)八
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析四、日志五、分页六、使用注解开发七、多对一和一对多处理八、动态SQL什么是动态SQL:就是指根据不同的条件生成不同的SQL语句。在 MyBatis 之前的版本中,需要花时间了解大量的元素。借助功能强大的基于 OGNL 的表达式,MyBatis 3 替换了之前的大部分元素,大大精简了元素种类。ifchoose (when, otherwise)trim (where, set)foreach7.1 搭建环境CR
2021-08-09 11:15:35
145
原创 Mybatis学习自用总结(狂神说Mybatis)七
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析四、日志五、分页六、使用注解开发七、多对一和一对多处理7.1 多对一处理多个学生,对应一个老师。对于学生而言,关联:多个学生关联一个老师【多对一】。对于老师而言,集合:一个老师有很多学生【一对多】。7.1.1 基本查询a.创建teacher和student表:CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAUL
2021-08-07 10:50:09
186
原创 Mybatis学习自用总结(狂神说Mybatis)六
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析四、日志五、分页六、使用注解开发8.1 面向接口编程为什么会选择面向接口编程?根本原因:解耦,可拓展,提高复用,上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性更好。8.2 使用注解开发注解在接口上实现。本质:反射机制的实现。底层:动态代理。a.UserMapper,java添加如下代码:public interface UserMapper { @Select("select *
2021-08-06 18:14:36
165
原创 Mybatis学习自用总结(狂神说Mybatis)五
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析四、日志5、分页思考:为什么要分页?a.减少数据的处理量5.1使用limit分页SELECT * from user limit startIndex,pagesize;SELECT * from user limit 3;#[0,n]5.2使用Mybatis分页,核心SQLa.接口 //分页 List<User> getUserByLimit(Map<String,Integer
2021-08-06 09:29:15
108
原创 Mybatis学习自用总结(狂神说Mybatis)四
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析四、日志4.1 日志工厂如果一个数据库操作,出现了异常,我们需要排错。日志就是最好的助手。曾经:sout,debug现在:日志工厂4.1.1 STDOUT_LOGGING标准日志输出在Mybatis核心文件中配置: <settings> <setting name="logImpl" value="STDOUT_LOGGING"/> </settings&g
2021-08-05 10:57:55
136
原创 Mybatis学习自用总结(狂神说Mybatis)三
一、第一个Mybatis项目二、Mybatis中的增删改查三、配置解析3.1 核心配置文件Mybatis的配置文件包含了会深深影响Mybatis行为的设置和属性信息。mybatis-config.xmlconfiguration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境
2021-08-04 17:52:25
144
原创 Mybatis学习自用总结(狂神说Mybatis)二
Mybatis学习自用总结(狂神说Mybatis)一、(第一个Mybatis项目)二、Mybatis中的增删改查2.1 select选择查询语句:a. id:对应的namespace中的方法名。b. resultType: Sql语句执行的返回值。c.parameterType :参数类型。例子(实现用ID号在表中查询结果):a.在UserMapper.java文件中添加如下代码: //根据Id查询用户 User getUserById(int id);b.在User
2021-08-04 10:34:04
175
原创 Mybatis学习自用总结(狂神说Mybatis)一
Mybatis学习自用总结(狂神说Mybatis)一.第一个Mybatis项目:Mybatis参考文档:https://mybatis.org/mybatis-3/zh/getting-started.htmlMybatis最重要的三个核心接口:SqlSessionFactoryBuilder,SqlSessionFactory,SqlSession1.1搭建环境1.1.1 搭建数据库DROP TABLE IF EXISTS user;CREATE TABLE user( id B
2021-08-03 17:48:15
234
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人