
Spging mvc 可以針對簡單的form去處理(結合JSTL)。
web.xml
<display-name>Spring MVC Form Handling</display-name>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<servlet>
<servlet-name>HelloWeb</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>HelloWeb</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
Codeless 發表在 痞客邦 留言(0) 人氣(59)
安裝環境
O.S.:Win7
JDK:1.8.0
Eclipse:Luna 4.4.1
Codeless 發表在 痞客邦 留言(0) 人氣(497)
Spting2.5後就可以使用Annotation的部分,在使用上面(較容易)可以取代原先XML的設定,但若是遇上Annotation和XML衝突的時候,則會以XML為主。
Required (可使用在setter上)
Codeless 發表在 痞客邦 留言(0) 人氣(20)
Auto-wiring
config設定中autowire屬性可以依據當時的的狀況(no(預設)、byName、byType、constructor、autodetect)去自動綁定,而不需要去大量去撰寫的程式碼。
byName
Codeless 發表在 痞客邦 留言(0) 人氣(61)
注入除了一般型態外,也可針對Collection(List、Map、Set、Properties)進行注入。
Customer.java
package com.example ;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
public class Customer {
private List nameList ;
private Map nameMap ;
private Set nameSet ;
private Properties nameProp ;
public List getNameList() {
return nameList;
}
public void setNameList(List nameList) {
this.nameList = nameList;
}
public Map getNameMap() {
return nameMap;
}
public void setNameMap(Map nameMap) {
this.nameMap = nameMap;
}
public Set getNameSet() {
return nameSet;
}
public void setNameSet(Set nameSet) {
this.nameSet = nameSet;
}
public Properties getNameProp() {
return nameProp;
}
public void setNameProp(Properties nameProp) {
this.nameProp = nameProp;
}
}
Codeless 發表在 痞客邦 留言(0) 人氣(8)
一般物件與物件間會有所謂的相依性(dependency),例如教室相依於學生
package com.example;
public class Classroom {
private Student stu=null ;
public Classroom(){
stu=new Student() ;
}
}
Codeless 發表在 痞客邦 留言(0) 人氣(38)
Bean和Bean之間也可以利用繼承(Inheritance)的方式。
HelloWorld.java
package com.example ;
public class HelloWorld {
private String message ;
private String message1 ;
public void getMessage(){
System.out.println("Your Message : " + message) ;
}
public void setMessage(String message) {
this.message = message;
}
public void getMessage1(){
System.out.println("Your Message1 : " + message1) ;
}
public void setMessage1(String message1) {
this.message1 = message1;
}
}
Codeless 發表在 痞客邦 留言(0) 人氣(5)
BeanPostProcessor可以針對初始化前後做一些修正(如:初始化前顯示為小寫,修正後為大寫等)
HelloWorld.java
package com.example ;
public class HelloWorld {
private String message ;
public void init(){
System.out.println("Initialization now") ;
}
public void getMessage(){
System.out.println("Your Message : " + message);
}
public void setMessage(String message) {
this.message = message;
}
public void destroy(){
System.out.println("Destory now") ;
}
}
Codeless 發表在 痞客邦 留言(0) 人氣(13)
Bean的scope包含:singleton(default)、prototype、request、session、global-session
Codeless 發表在 痞客邦 留言(0) 人氣(22)
Spring 基本概念
Spring框架的核心就是Spring容器,主要是透過容器建立、設定、管理直到銷毀物件。容器主要是利用dependency injection (DI)去管理組成應用程式的元件(物件),而這些元件(物件)則稱為所謂的Beans。
Spring提供了下列兩種不同的容器:
Spring BeanFactory Container
Codeless 發表在 痞客邦 留言(0) 人氣(349)