春の学習の最初の日
春とは何ですか
-
春は春には2003のJava開発フレームワークで軽量な上昇であるオープンソースのフレームワークである、いくつかのアイデアは、ロッド・ジョンソンが派生彼の本EXPER一対一のJ2EE開発・設計・試作に入れて持っています。作成したエンタープライズアプリケーション開発の複雑さに対処するように設計されています。
-
春は、サーバー側の開発の使用に限定されません。任意のJavaアプリケーションは、春の観点から単純、テスト容易性と疎結合から利益を得ることができます。
-
スプリングコアは、制御の逆転(IOC)と対向する部分(AOP)です。簡潔には、スプリングは、層状するJavaSE / EEフルスタック(停止)軽量オープンソースフレームワークです。
-
名前説明
ばねのばね到着は春にプログラマ(設定があまりにも複雑になる前に)として理解することができ
-springmvc |
| -springboot
| -springclould
|データを-spring -
春のコア
春は、コンテナである
IOC / DI
コントロールの逆:すべてのIOCとして知られている- |
| DI -DI:フルインジェクションは依存関係と呼ばれる
| - AOP:アスペクト指向プログラミング指向プログラミングAOPアスペクトは、の略で -
スプリングコア
L JavaWeb春3つの結果、異なる溶液の技術を提供する各層。
リットルのWeb層:SpringMVC
Lサービス層:春IOC
Lダオ層:春のjdbcテンプレート -
図スプリングフレームワーク
図1に示すように、従来の方法
春の作成にIDEAのプロジェクトを使用して1、
2、UserServiceのを作成します
public interface UserService {
public void add();
}
UserserviceImplを作成します3。
public class UserServiceImpl implements UserService {
@Override
public void add() {
System.out.println ("打印一下…………");
}
}
4、UserServiceのにアクセスするための試験方法(方法以前に開発されました)
@Test
public void test(){
/**
* 以前的做法
*/
UserService userService =new UserServiceImpl ();
userService.add ();
}
5、出力
図2に示すように、モードのスプリングを使用して
1、UserServiceのUserviceImpl変わらないと
2、コンフィギュレーション・ファイルapplication.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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
</beans>
ヘッダファイルで3、豆の声明
<!--声明userService-->
<!--id:spring ioc容器创建对象之后可以使用id从容器里面使用getBean(String id )对取这个对象
class :要创建的对象的完全限定名(路径) -->
<bean id="userService" class="com.zhangyong.UserServiceImpl"></bean>
図4に示すように、スプリングを使用してテストアクセス方法
@Test
public void test(){
/**
* 使用spring配置文件的写法
* 使用配置文件的application去自动new userService
* ApplicationContext 用于加载配置文件
* context.getBean 获取配置文件的声明
*/
ApplicationContext context = new ClassPathXmlApplicationContext ("application.xml");
UserService userService = (UserService) context.getBean ("userService");
userService.add ();
}
5、その結果
![出力](https://img-blog.csdnimg.cn/20191113115032266.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3p5MTM3NjUyODc4NjE=,size_16,color_FFFFFF,t_70
3、DIを説明します
- 依存性注入依存性注入、場合ビーン共通のオブジェクトに責任がある、動的オブジェクトは春にビーンコンポーネントフレームワークに注入左右される
実施例:
図1は、エンティティ・クラスに加え、UserServiceのgetおよびsetメソッドを添加します
public class UserServiceImpl implements UserService {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void add() {
System.out.println ("打印一下…………"+name);
}
}
2、出力:
3、コンフィギュレーション・ファイル名に注入
<bean id="userService" class="com.zhangyong.UserServiceImpl">
<!--注入属性,调用set的方法-->
<property name="name" value="zhangsan"></property>
</bean>
図4に示すように、出力
要約:ASが名前の値を見ることができ、注射を介してプリントアウトされます