JavaBean在一開始是爲了滿足可視化工具而創建的,在可視化工具欄中,拖動一個比如按鈕等組件進來時,會創建一個對應的代碼段供開發者修改組件,而這段代碼就是
最早的JavaBean
在context.xml內配置:
<Context reloadable="true">:表示修改任何文件時,不需要重啓tomcat,tomcat會定時掃描文件是否被修改。這個修改只適合在項目製作過程中使用。但是到後面數據庫連接時
會有一定的弊端。
javaBean的規範:
1. 必須要有一個默認構造器
2. 提供get/set方法,如果只有get方法,那麼這個屬性是隻讀屬性!
3. 屬性:有get/set方法的成員,還可以沒有成員,只有get/set方法。屬性名稱由get/set方法來決定!而不是成員名稱!
4. 方法名稱滿足一定的規範,那麼它就是屬性!boolean類型的屬性,它的讀方法可以是is開頭,也可以是get開頭!
內省:
內省類 --> Bean信息 --> 屬性描述符 --> 屬性的get/set對應的Method! --- > 可以反射了!
-----------------------
commons-beanutils,它是依賴內省完成!
* 導包:
> commons-beanutils.jar
> commons-logging.jar
BeanUtils.getProperty(Object bean, String propertyName)
BeanUtils.setProperty(Object bean, String propertyName, String propertyValue)
BeanUtils.populate(Map map, Object bean)
CommontUtils.toBean(Map map, Class class)
-----------------------
jsp中與javaBean相關的標籤!
* <jsp:useBean> --> 創建或查詢bean
* <jsp:useBean id="user1" class="cn.itcast.domain.User" scope="session"/> 在session域中查找名爲user1的bean,如果不存在,創建之
* <jsp:useBean id="user1" class="cn.itcast.domain.User" scope="session"/>
* <jsp:setProperty>
* <jsp:setProperty property="username" name="user1" value="admin"/> 設置名爲user1的這個javabean的username屬性值爲admin
* <jsp:getProperty>
* <jsp:getProperty property="username" name="user1"/> 獲取名爲user1的javabean的名爲username屬性值