html2javabean
39579 단어 javabean
1 <html2javaConfig>
2
3 <bean id="user1" class="com.googlecode.html2javabean.client.User">
4
5 <property name="name" groupIndex="1">
6
7 <![CDATA[
8
9 <span id="lblName">(.*?)</span>
10
11 ]]>
12
13 </property>
14
15 <property name="code">
16
17 <![CDATA[
18
19 <span id="lblWork">(.*?)</span></td>
20
21 ]]>
22
23 </property>
24
25 <property name="isMan">
26
27 <![CDATA[
28
29 <span id="lblSex">(.*?)</span></td>
30
31 ]]>
32
33 </property>
34
35 </bean>
36
37 </html2javaConfig>
추출할 html 파일은 다음과 같습니다.
1 <table style="height: 306px; width: 99%;">
2
3 <tr>
4
5 <th style="width: 100px;" align="left">
6
7 :</th>
8
9 <td>
10
11 <span id="lblName">tony</span>
12
13 </td>
14
15 </tr>
16
17 <tr>
18
19 <th align="left">
20
21 :</th>
22
23 <td>
24
25 <span id="lblWork">ite00395</span></td>
26
27 </tr>
28
29 <tr>
30
31 <th align="left">
32
33 :</th>
34
35 <td>
36
37 <span id="lblSex">man</span></td>
38
39 </tr>
40
41 <tr>
42
43 <th align="left">
44
45 Email:</th>
46
47 <td>
48
49 <span id="lblEmail">[email protected]</span>
50
51 </td>
52
53 </tr>
54
55 <tr>
56
57 <th align="left">
58
59 MSN:</th>
60
61 <td>
62
63 <span id="lblMsn"> [email protected]</span></td>
64
65 </tr>
66
67 <tr>
68
69 <th align="left">
70
71 :</th>
72
73 <td>
74
75 <span id="lblPhone"></span></td>
76
77 </tr>
78
79 <tr>
80
81 <th align="left">
82
83 :</th>
84
85 <td>
86
87 <span id="lblMobile">13714896419</span></td>
88
89 </tr>
90
91 <tr>
92
93 <th align="left">
94
95 :</th>
96
97 <td valign="middle">
98
99 <span id="lblDepartment">P </span></td>
100
101 </tr>
102
103 <tr>
104
105 <th align="left">
106
107 :</th>
108
109 <td valign="middle">
110
111 <span id="lblDeptAddress"></span></td>
112
113 </tr>
114
115 </table>
최종적으로 전환된javabean 대상은 다음과 같습니다.
public class User implements Serializable{
/**
* serialVersionUID
*/
private static final long serialVersionUID = 5014957386430143870L;
private String name;
private String code;
private boolean isMan;
private String email;
private String msn;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public boolean isMan() {
return isMan;
}
public void setMan(boolean isMan) {
this.isMan = isMan;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getMsn() {
return msn;
}
public void setMsn(String msn) {
this.msn = msn;
}
}
이렇게 하면 다음 코드로 이 구성 요소를 호출할 수 있습니다.
public void testParse() throws IOException{
String resource = "h2j_config.xml";
Reader reader = Resources.getResourceAsReader(resource);
Html2JavabeanClient client = Html2JavabeanClientBuilder.buildSqlMapClient(reader);
StringWriter sw = new StringWriter();
InputStream is = Resources.getResourceAsStream("oneuser.html");
BufferedReader reader1 = new BufferedReader(new InputStreamReader(is));
String temp = null;
while((temp = reader1.readLine()) != null){
sw.write(temp);
}
reader1.close();
User u = (User)client.parseForObject("user1", sw.getBuffer().toString());
System.out.println(u.getName() + " " + u.getCode());
}
사용하기에 마치 ibatis와 비슷한 것 같아요. 왜냐하면 이 구성 요소는 ibatis에서 xml을 해석하는 코드를 가지고 고친 것이기 때문에 ibatis 원본 코드를 배울 때 이런 생각이 들었어요.만약 이런 상황을 만난 프로젝트가 많은 html을 해석하지 않으면 이런 구성 요소의 생각은 그래도 괜찮다.필요한 것은 내가 쓴 코드를 참고해서 직접 쓸 수 있다. 나의 코드는 사실 다 쓰지 못했고 단지 실험적으로 데모를 만들었다.소통이 필요하시면 이메일로 보내주세요.광저우 잠촌 고과와 그 형제들이 함께 했던 날이 또 생각났다.프로젝트 코드 주소: http://code.google.com/p/html2javabean/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
spring 실례화javabean의 세 가지 방식 공유첫 번째:javabean 파일 직접 설정 bean.xml personDao.java 두 번째: xml설정+factory류, 정적 공장 사용 방법 실례화 bean.xml productCreator.java person...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.