<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sonpam的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sonpam</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sonpam]]></copyright><item><title><![CDATA[SSM学习笔记]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103755417</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103755417</guid><author>sonpam</author><pubDate>Sun, 29 Dec 2019 17:23:01 +0800</pubDate><description><![CDATA[pom.xml
  &lt;properties&gt;
    &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
    &lt;maven.compiler.source&gt;1.8&lt;/maven.compiler.source&gt;
    &lt;maven.compile...]]></description><category></category></item><item><title><![CDATA[SpringMVC学习笔记（三）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103738870</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103738870</guid><author>sonpam</author><pubDate>Fri, 27 Dec 2019 22:05:45 +0800</pubDate><description><![CDATA[异常处理
pom.xml
  &lt;properties&gt;
    &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
    &lt;maven.compiler.source&gt;1.8&lt;/maven.compiler.source&gt;
    &lt;maven.co...]]></description><category></category></item><item><title><![CDATA[SpringMVC学习笔记（二）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103722514</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103722514</guid><author>sonpam</author><pubDate>Thu, 26 Dec 2019 21:00:36 +0800</pubDate><description><![CDATA[响应
pom.xml
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.springframework&lt;/groupId&gt;
      &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
      &lt;version&gt;${sprin...]]></description><category></category></item><item><title><![CDATA[SpringMVC学习笔记（一）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103624674</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103624674</guid><author>sonpam</author><pubDate>Thu, 19 Dec 2019 22:46:13 +0800</pubDate><description><![CDATA[SpringMVC入门案例
1、创建Maven工程，并导入依赖。
2、编写初始页面。
3、编写控制器类。
4、创建配置文件。
5、编写跳转页面。
6、启动Tomcat服务器。
pom.xml
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.springframework&lt;/groupId&gt;
 ...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（九）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103606789</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103606789</guid><author>sonpam</author><pubDate>Wed, 18 Dec 2019 23:37:53 +0800</pubDate><description><![CDATA[Spring基于XML的声明式事务
pom.xml
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;junit&lt;/groupId&gt;
      &lt;artifactId&gt;junit&lt;/artifactId&gt;
      &lt;version&gt;4.12&lt;/versio...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（八）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103606623</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103606623</guid><author>sonpam</author><pubDate>Wed, 18 Dec 2019 23:26:59 +0800</pubDate><description><![CDATA[基于XML的AOP实现事务控制
spring_AOP_account_xml
pom.xml
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;junit&lt;/groupId&gt;
      &lt;artifactId&gt;junit&lt;/artifactId&gt;
      &lt;versi...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（七）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103246521</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103246521</guid><author>sonpam</author><pubDate>Mon, 25 Nov 2019 21:49:19 +0800</pubDate><description><![CDATA[JdbcTemplate
作用：用于和数据库交互，实现对表的CRUD操作。
Account.java
package com.how2java.domain;

import java.io.Serializable;

/**
 * 账户的实体类
 */
public class Account implements Serializable{

    private Integer id;
...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（六）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103214168</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103214168</guid><author>sonpam</author><pubDate>Sat, 23 Nov 2019 22:06:31 +0800</pubDate><description><![CDATA[AOP
一、AOP概念
在软件业，AOP为Aspect Oriented Programming的缩写，意为：面向切面编程，通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续，是软件开发中的一个热点，也是Spring框架中的一个重要内容，是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离，从而使得业务逻辑各部分之间的耦合度降低，提高程序的可重用...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（五）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103208805</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103208805</guid><author>sonpam</author><pubDate>Fri, 22 Nov 2019 23:35:26 +0800</pubDate><description><![CDATA[通过转账案例演示事务问题
1、分析事务问题，并编写ConnectionUtils工具类。
2、编写事务管理工具类，并分析连接和线程的解绑。
3、编写业务层和持久层的事务控制代码，并实现IOC配置。
4、测试转账操作，并分析案例中的问题。
Account.java
package com.how2java.domain;

import java.io.Serializable;

public c...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（四）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/103200230</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/103200230</guid><author>sonpam</author><pubDate>Fri, 22 Nov 2019 15:23:42 +0800</pubDate><description><![CDATA[基于注解的IOC案例
Account.java
package com.how2java.domain;

import java.io.Serializable;

public class Account implements Serializable{

    private Integer id;
    private String name;
    private Float mo...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（三）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102985498</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102985498</guid><author>sonpam</author><pubDate>Sat, 09 Nov 2019 12:04:34 +0800</pubDate><description><![CDATA[Spring的注解注入
IAccountDao.java
package com.how2java.dao;

public interface IAccountDao {
    public void saveAccount();
}

AccountDaoImpl1.java
package com.how2java.dao.impl;

import com.how2java.dao.IA...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（二）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102881106</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102881106</guid><author>sonpam</author><pubDate>Sun, 03 Nov 2019 12:29:50 +0800</pubDate><description><![CDATA[SpringIOC
一、IOC的概念和作用
1、IOC即Inversion Of Control，反转控制，就是把创建对象的权利交给Spring。
2、IOC的作用是解耦，即降低程序之间的依赖关系。
二、使用SpringIOC解耦
1、Spring基于XML的IOC环境搭建和入门
创建配置文件，把配置信息交给Spring，并且获取一个核心容器对象，再根据唯一标志取出Bean对象。
IAccount...]]></description><category></category></item><item><title><![CDATA[Spring学习笔记（一）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102871090</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102871090</guid><author>sonpam</author><pubDate>Sat, 02 Nov 2019 19:24:20 +0800</pubDate><description><![CDATA[Spring概述
1、Spring的定义
Spring是分层的javaSE/EE全栈式轻量级开源框架，以IOC和AOP为内核，提供表现层SpringMVC和持久层SpringJDBC以及业务层事务管理等众多的企业级应用技术，还能整合开源世界众多著名的第三方框架和类库，逐渐成为使用最多的javaEE企业应用开源框架。
2、Spring的优势
①方便解耦，简化开发。
②支持AOP编程
③支持声明式事务...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（七）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102860224</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102860224</guid><author>sonpam</author><pubDate>Fri, 01 Nov 2019 16:54:02 +0800</pubDate><description><![CDATA[Mybatis注解开发一对一（多对一）和一对多的查询配置
User.java
package com.how2java.pojo;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

public class User implements Serializable{

    private I...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（六）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102858204</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102858204</guid><author>sonpam</author><pubDate>Fri, 01 Nov 2019 15:41:55 +0800</pubDate><description><![CDATA[Mybatis注解开发CURD
一、Mybatis注解开发的环境搭建
pojo类
package com.how2java.pojo;

import java.io.Serializable;
import java.util.Date;

public class User implements Serializable{

    private Integer id;
    privat...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（五）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102813712</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102813712</guid><author>sonpam</author><pubDate>Wed, 30 Oct 2019 17:38:21 +0800</pubDate><description><![CDATA[延迟加载和立即加载
1、在一对多中，如果一个用户有100个账户：
①在查询用户时，用户下的账户信息，应该是使用的时候才查出来。
②在查询账户时，账户所属用户信息应该是随着账户查询是一起查出来。
2、在四种表关系中：一对多，多对多，通常采用延迟加载；一对一，多对一：通常采用立即加载。
延迟加载：在真正使用数据时才触发查询，不用时不查询，即按需加载。
立即加载：不管用不用，只要一调用方法，马上发起查询...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（四）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102780823</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102780823</guid><author>sonpam</author><pubDate>Tue, 29 Oct 2019 00:27:39 +0800</pubDate><description><![CDATA[Mybatis中的多表查询
一、表之间的关系：
一对多，多对一，一对一，多对多。
例如：
一个用户可以下多个订单，一个订单只属于一个用户，那么用户和订单之间就是一对多，订单和用户之间就是多对一。
一个人只能有一个身份证，一个身份证只属于一个人，那么人和身份证之间就是一对一。
一个老师可以教多个学生，一个学生可以被多个老师教，那么老师和学生之间就是多对多。
特例：
如果拿出一个订单，那么这个订单只属...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（三）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102766405</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102766405</guid><author>sonpam</author><pubDate>Sun, 27 Oct 2019 23:00:47 +0800</pubDate><description><![CDATA[Mybatis中的连接池及事务控制
一、连接池
1、连接池是存储连接的容器，该容器是一个实现队列的线程安全的集合。
2、使用连接池可以减少获取连接的时间，从而提高开发效率。
3、Mybatis中的连接池：
①配置的位置是主配置文件SqlMapConfig.xml中的dataSource标签。
②type属性的取值指定使用的连接池方式：
POOLED：采用传统的javax.sql.DataSourc...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（二）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102750822</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102750822</guid><author>sonpam</author><pubDate>Fri, 25 Oct 2019 23:09:20 +0800</pubDate><description><![CDATA[Mybatis基于代理dao的CRUD操作
主要有查询所有用户、保存用户、更新用户、根据id删除用户、根据id查询用户信息、根据名称模糊查询用户、查询用户总记录条数等
dao接口
public interface IUserDao {
    List&lt;User&gt; findAll();
    void save(User user);
    void update(User use...]]></description><category></category></item><item><title><![CDATA[Mybatis学习笔记（一）]]></title><link>https://blog.youkuaiyun.com/sonpam/article/details/102698949</link><guid>https://blog.youkuaiyun.com/sonpam/article/details/102698949</guid><author>sonpam</author><pubDate>Wed, 23 Oct 2019 17:57:06 +0800</pubDate><description><![CDATA[前言
一、框架
框架是软件开发中的一套解决方案，不同的框架解决不同的问题。
框架封装了很多细节，使软件开发者可以用极简的方式实现功能，提高开发效率。
二、三层架构
表现层：用于展示数据。
业务层：处理业务需求。
持久层：和数据库交互。
三、持久层技术解决方案
JDBC技术：Connection，PreparedStatement，ResultSet。
Spring中的JdbcTemplate：对J...]]></description><category></category></item></channel></rss>