Action:
private String keyWord = null;
private Vector news = new Vector();
public void list() throws ServletException, IOException{
keyWord = getParameter("keys");
String fileName = null;
String path = Config.getProperty(Keys.CONFIG_APPLICATION_PATH) + "/"
+ Config.getProperty(Keys.NEWS_PATH_CONTEXT);
CompnewsDAO dao = SuperDAO.getInstance().newCompnewsDAO();
List<Compnews> cnList = dao.selectAll();
for(Iterator iter = cnList.iterator() ; iter.hasNext();){
Compnews cn = (Compnews)iter.next();
String title = cn.getTitle();
String ytitle = cn.getYtitle();
String ftitle = cn.getFtitle();
String cdate = cn.getCdate();
String compnewsid = cn.getCompnewsid();
String showtxt = cn.getTxtContent();
String zmedia = cn.getZmedia();
fileName = path+"/"+compnewsid;
//FileReader 读
//BufferedReader 可以按行读
BufferedReader mybufferReader = new BufferedReader(new InputStreamReader(new FileInputStream(fileName),"UTF-8"));
String myString = "";
String resultString = new String();
while((myString=mybufferReader.readLine())!=null){
resultString = resultString+myString;
}
mybufferReader.close();
String searchString = "1";
Pattern p = null;
Matcher m = null;
p = Pattern.compile(keyWord);
m = p.matcher(resultString);
if(!m.find()){
searchString = "0";
}
if(searchString.equals("1")){
Compnews cn0 = new Compnews();
cn0.setCdate(cdate);
cn0.setCompnewsid(compnewsid);
cn0.setFtitle(ftitle);
cn0.setTitle(title);
cn0.setTxtContent(showtxt);
cn0.setYtitle(ytitle);
cn0.setZmedia(zmedia);
news.addElement(cn0);
}
}
getRequest().setAttribute("keyWord", keyWord);
getRequest().setAttribute("searchNewsList", news);
getRequest().getRequestDispatcher("/news/search_news.jsp").forward(getRequest(), getResponse());
}
JSP:
<%
String path = request.getContextPath();
Vector news =(Vector) request.getAttribute("searchNewsList");
String keyWord =(String) request.getAttribute("keyWord");
%>
<%
if(!news.isEmpty()){
for(int i = 0 ; i < news.size() ; i ++){
Compnews cn = (Compnews)news.get(i);
%>