Day7: search project by keyword
来源:互联网 发布:西安 广告算法工程师 编辑:程序博客网 时间:2024/06/03 17:21
我到实验室,去写关键字项目搜索。
关键字搜索项目的核心语句:
SELECT * FROM dc_project WHERE dc_project_title LIKE CONCAT("%",keyword,"%");
写后调试,发现bean.Project类的定义与数据库中的不符,同步也修改了CommonService.Search中的赋值部分。
但问题并没有全部解决,网页中的代码如下:
<s:iterator value="list" status="stat">
<tr>
<td><s:property value="#stat.getIndex()+1"/></td>
<td><s:property value="dc_project_batch_id"/></td>
<td><s:property value="dc_project_title"/></td>
<td><s:property value="dc_project_level"/></td>
<td><s:property value="dc_project_type"/></td>
<td><s:property value="dc_project_funds"/></td>
<td><s:property value="dc_project_college"/></td>
<td><s:property value="dc_project_leader_id"/></td>
<td><s:property value="dc_project_dc_project_introduce"/></td>
</tr>
</s:iterator> <!-- 行迭代 -->
但却并没有打印出应有的信息。
经检验,CommonService.Search中确实完成了对数据库的访问并成功返回值;
action.common.SearchProjectAction中的list返回值也是正确的,但为何不能打印出正确的数据呢?
那就应该是structs跌代器<s:iterator>的问题了。
后来师哥发现原来是没有引用标签库造成的,真是厉害!加上
<%@ taglib uri="/struts-tags" prefix="s"%>
后运行,项目内容被正确显示,大功告成!
之后又写了各种project查询的存储过程,其中多次用到了:LEFT JOIN。
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
同时,RIGHT JOIN:
RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。
它们可以避免返回值为空,避免一些未知错误。
所以为了规避空返回值,必须有可以验证查询失败后的校验才行。
但这对getProjectListByKeyword没有影响,因为返回值使用了list接收,即使为空,依然不会出错:
List<Project> list=new ArrayList<Project>();
while (rst.next()) {
Project project = new Project();
list.add(project);
}
project查询总算完成了,调试也已经通过,真的还是蛮开心的。
2016.9.14 Tuesday
- Day7: search project by keyword
- search keyword
- DataTable search keyword
- DataTable search keyword
- HDU-2222 Keyword Search
- Day7
- DAY7
- day7
- DAY7
- Day7
- day7
- day7
- day7
- Day7
- day7
- DAY7
- search keyword from database of dedecms
- search one keyword from all tables;
- [置顶] [2009年最新版]IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdm
- Android编程实现关机和重启
- 【Java数据结构与算法03】 | 第1章--小结
- 决策树-CART算法
- [置顶] 单机Apache服务器设置N多虚拟主机
- Day7: search project by keyword
- [置顶] jquery选择器的调试 -- 使用其他的日志工具
- iOS开发探索-二维码
- OpenCV +Python 制作画板
- [置顶] JS UI自己搞2 -- 构建简单的UI组件
- Java多线程
- [置顶] 隐藏apache和php的版本信息
- javascript验证
- [置顶] Rebol 3 工具的学习