抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

查找最晚入职员工的所有信息

查找最晚入职员工的所有信息
CREATE TABLE employees (
emp_no int(11) NOT NULL,
birth_date date NOT NULL,
first_name varchar(14) NOT NULL,
last_name varchar(16) NOT NULL,
gender char(1) NOT NULL,
hire_date date NOT NULL,
PRIMARY KEY (emp_no));

我们排序以后选出最大的

1
2
3
select * from employees
order by hire_date desc
limit 0,1

找到最大值以后使用where

1
2
select * from employees
where hire_date = (select max(hire_date) from employees);

spring中的AOP

连接点,被拦截到的点,在spring中指的是方法
切入点,被增强的连接点
通知 在调用方法前的是前置通知,在后面的是后置通知,在catch中的是异常通知,在final中的是最终通知,整个invoke方法就是环绕通知
Target 被代理的对象

account案例

   我们有一个转账方法: 根据名称找到账户,转出账户减钱,转入账户加钱,更新转出账户,更新转入账户,这个方法没有事务的控制,可能出现问题

案例问题

   实际上我们需要维护一个和线程绑定的数据库连接,我们做一个工具类,让其支持回滚,于是我们在上诉案例中可以使用trycatch,一旦碰到问题,在catch中回滚即可,这个可以解决问题,但是太复杂了。

spring整合junit

@RunWith

我们需要切换junit的main

@ContextConfiguration

指定配置类或者配置文件

1
2
3
4
5
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>4.3.8.RELEASE</version>
</dependency>

注解配置IOC

先总结一下之前的东西,曾经的XML配置,有标签id和class用于构造,有scope用来表示作用范围,有init-method和destroy-method用来表示生命周期,有property用来表示依赖注入

告知spring去扫描

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
<context:component-scan base-package="com.wsx.spring"></context:component-scan>
</beans>

sprint的依赖注入

dependency injection
IOC是降低程序之间的依赖关系的,我们把依赖关系交给spring维护,依赖关系的维护就叫做依赖注入
注入的类型 基本类型和Sring、 bean类型、集合类型
注入的方法 构造函数、set、注解

XML配置IOC

使用默认构造函数创建Bean

在spring的配置文件中使用Bean标签, 只配置id个class属性

1
2
3
4
5
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="myclass" class="com.wsx.spring.Myclass"></bean>
</beans>

创建IOC容器

ApplicationContest

单例对象适用

  • ClassPathXmlApplicationContext 可以加载类路径下的配置文件,要求配置文件在类路径下
  • FileSystemXmlApplicationContext 可以加载任意路径下的配置文件(要有访问权限)
  • AnnotationConfigApplicationContext 读取注解创建容器

ApplicationContest什么时候创建对象

  • 当加载配置文件的时候就创建了对象

nexthexonextbutterflyvolantisyearnyiliashokaindigoapollolandscapecactusmateryicarusfluidmaterial 题目1 流程图 判定覆盖 需要三条路径 第一组: (x,y,z) = (4,0,9) (x,y,z) = (4,0,0) (x,y,z) = (2,0,0) 第二组:...

耦合

我们考虑一个web应用,使用三层架构: 视图层+业务层+持久层,
视图层依赖业务层,业务层依赖持久层,这是非常不好的现象,当我们的持久层需要改变的时候,整个项目都要改变,项目非常不稳定。

怎么解决

工厂!