myecplise文件如何转成ecplise文件只需要使用文件替换的形式就好了,一个是src目录,一个是WebContent目录 引进去 主要修改项目的属性
比如jdk要换为1.6,加上tomcat
页面使用迭代器遍历结果时,后端一定要用到返回值为list<JavaBean>格式的这种方法,直接就可以遍历出结果了,这是相对应的一种配套使用方法
搜索框的做法很简单,绑定函数为AJAX搜索函数,直接令输入框text属性 传值给AJAX函数就可以了
在大象里面建立一个表
CREATE TABLE mms_update
(
code integer NOT NULL,
proname character varying(64),
"version" character varying(64),
dialect character varying(64),
driver character varying(64),
url character varying(64),
CONSTRAINT mms_update_pkey PRIMARY KEY (code)
)
WITH (
OIDS=FALSE
);
ALTER TABLE mms_update OWNER TO postgres;
<strong><span style="font-size:24px;color:#ff0000;">如何读取当前文件目录下的属性配置文件,属性文件是以键值方式存储的</span></strong> Locale locale = Locale.getDefault(); ResourceBundle localResource = ResourceBundle.getBundle("mms", locale); String SystemBackup = localResource.getString("SystemBackup"); System.out.println("SystemBackup: " + SystemBackup);
这个程序用于截取字符串最好的操作,和split一起操作用,比较好,互补使用 public class Demo{ public static void main(String[] args) { String imageFileName="aww.zss.war"; System.out.println("imageFileName:"+imageFileName); int pos = imageFileName.lastIndexOf("."); // IndexOf("."); String typeName = imageFileName.substring(pos,imageFileName.length()); System.out.println("typeName:"+typeName); if (typeName.equalsIgnoreCase(".zip")||typeName.equalsIgnoreCase(".war")) { System.out.print("成功"); } else{ System.out.print("错误"); } }}
<strong><span style="font-size:24px;color:#ff0000;">DTO与DAO最好的关系</span></strong> List<OperationLog> list = operationLogDao.findByHQL(hql); List<OperationLogDto> listEx = new ArrayList<OperationLogDto>(); for (OperationLog operationLog : list) { OperationLogDto dto = new OperationLogDto(operationLog); listEx.add(dto); } return listEx;
Service注解的重要性
@Service("updateService")
public class UpdateServiceImpl implements UpdateService {
http://download.csdn.net/download/liujun13579/5210260
6222021202045924421
/** * 数据库插入记录查询 */ public String find() { /*List<Update> list =updateService.find(); ServletActionContext.getRequest().setAttribute("list", list );*/ return "find"; }
public Update update;//update为JavaBean public Update getUpdate() { return update; } public void setUpdate(Update update) { this.update = update; }在action里面直接向javbean注入值:
<span style="color:#ff0000;">user=new User(); user.setPwds("0"); user.setName("zss");</span>
<span style="color:#ff0000;">在对应的jsp中可以这样写,这两个值是等价的,如果不输出值,就在前面加上个#</span>
<span style="color:#ff0000;"><span style="white-space:pre"> </span>User的值: <s:property value="user.name"/> <span style="white-space:pre"> </span>User的值: <s:property value="user.getName()"/> </span>
<struts:iterator id="u" value="update"> Code:<struts:property value='#u.getCode()'/> <br/> Version:<struts:property value='#u.getVersion()'/> <br/> Url:<struts:property value='#u.getUrl()'/> <br/> Dialect:<struts:property value='#u.getDialect()'/> <br/> ProName:<struts:property value='#u.getProName()'/> <br/> Driver:<struts:property value='#u.getDriver()'/> <br/> </struts:iterator>查询数据库时,要看看它父类都有哪有方法,到时候直接使用就行了,不要相像着自己添加那些方法,只会调用就行了,因为都是封装好的,在父类中,供子类调用
<span style="font-size:24px;color:#ff0000;">在页面中用表格显示迭代器输出内容</span>
<div class="first_upload_01"> <br/>数据库历次升级信息记录:<br/> <table border="border" width="300" text-align:center> <tr text-align:center> <th text-align:center>code</th> <th text-align:center>date</th> </tr> <struts:iterator value="#request.list" var="list" > <tr> <td> <struts:property value='code'/> </td> <td> <struts:property value='date'/> </td> </tr> </struts:iterator> </table> </div>
比如 <package namespace="/"> <action name="login"> 页面jsp <form action="login"> MyProjex是我的项目名 表单提交 那么你的浏览器地址是 http://localhost:8080/MyProject/login.action.
这是jsp路径<result name="input" >/web/module/update/upfile_01.jsp</result> 你的浏览器地址是根据namespace/action名称 访问的 这个namespace是虚拟路径,可以在项目中完全不存在。随便取
java开发小技巧
1.1 JSP页面上添加EL表达式支持和struts2标签支持
<%@ taglib prefix="struts" uri="/struts-tags"%>
<%@ page isELIgnored="false"%>
1.2 Dto 就是数据传输对象的意思,说白了就是改写映射数据库表的那个类
Mybatis就是通过namespace、id、resulttype主要这三个因素来调用
1.9 long类型转变为string
String a= request.getAttribute("t").toString();就可以了
如果类型是Long, 就用toString
如果类型是long, 用String.valueOf(request.getAttribute("t").)
2 导入的项目不能使用tomcat6,只能使用tomcat7
在一工程里面Strust2UpDown\.settings文件里面找到这个配置文件
org.eclipse.wst.common.project.facet.core.xml
找到 <installed facet="jst.web" version="3.0"/> 这一项 要把version="3.0"改为2.5
3在配置文件中/ 这个目录就相当于webroot下面的目录,对于跳转文件路径很有用
<action name="upload_*" class="com.xulin.action.UpfileAction" method="{1}">
<result name="success">/web/module/update/downfile_01.jsp</result>
</action>
4 Hibenater与mybatis的区别在于 hiberater调用的最底层是dao层,也就是说在里面写上SQL语句,每一层使用的使用都用相关递进层的父类实例化对象来调用对应子类的方法,最终把查询结果放在action层里面,供别人使用。,同时那个action层里面那些很特别的方法,都是继承父类得到的那些方法。使用的时候只要学会调用父类的方法的就可以
子类继承公共类,父类调用子类的方法 : 遵循这一原则
5 "There is no Action mapped for namespace / and action name"的错误
今天在调试一个基础的Struts2框架小程序。总是提示"There is no Action mapped for namespace / and action name"的错误。上网查询后发现这是一个初学者经常碰到的问题,导致错误的原因主要有两种。总结如下:
一、struts.xml文件错误。这种错误又分为以下几种:1,struts.xml文件名错误。一定要注意拼写问题;2,struts.xml文件放置路径错误。一定要将此文件放置在src目录下。编译成功后,要确认是否编译到classes目录中;3,struts.xml文件内容错误。下面给出一个正确的struts.xml文件以供参考。注意背景色部分。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="login" class="com.wanggc.struts2.sample.Struts2Action">
<result name="success">/jsp/result.jsp</result>
</action>
</package>
</struts>
二、如果排除了struts.xml文件的问题,还有一种可能就是,在web.xml文件中的<welcome-file>信息中是否配置了自己工程的启动页面。如果没有配置,地址栏中要输入完成的ur
6 struts2的method="{1}"
有高手能帮我讲解下这个下吗 在struts.xml文件夹下
这里的{1}表示接收前面action里通过通配符传来的值,例如你配置的是<action name="*Crud" class="example.Crud" method="{1}"> ,然后调用***/editCrud.action,则method里获得的值是edit,将会调用这个action里面的 edit方法 附: Action中的方法通配符 有些时候对Action中方法的调用满足一定的规律,例如edit Action对应edit方法,delete Action对应 delete方法,这个时候我们可以使用方法通配符,例如: <action name="*Crud" class="example.Crud" method="{1}"> 这时,editCrud Action的引用将调用edit方法,同理,deleteCrud Action的引用将调用delete 方法。 另外一种比较常用的方式是使用下划线分割,例如: <action name="Crud_*" class="example.Crud" method="{1}"> 这样当遇到如下调用的时候可以找到对应的方法。 "action=Crud_input" => input方法 "action=Crud_delete" => delete方法 通配符和普通的配置具有相同的地位,可以结合使用框架的所有其他功能。
7 在struts2中,如何将表单提交到action的具体的某一个方法来处理?该怎样写?(主要分为两种方法,利用struts form标签和直接利用form标签这两种)
注意这种特殊表单的写法,是以s为标签库的
<s:form action="resumeAction" method="post" namespace="/resume" >,我想提交到resumeAction的chang方法,跪求高手解答。
表单提交如下,这种表单直接是以form作为标签的 <form action="index.action" method="post"> <input type="submit" value="提交"/> </form>提问者采纳
用动态action.例如这样的写法 <s:form action="resumeAction!change.action" method="post" namespace="/resume" > !后面就是你要执行的方法名 默认action执行的是execute方法。
我自己做 是另外一种,提交到表单给action中的某一个方法,action用的是全路径,使用的是通配符方法,直接调用到action的其中一个方法。
<form action="<%=basePath%>upload_upFileOnea" method="post" enctype="multipart/form-data">
8 在jsp页面中,如何实现点击一个链接,执行JavaScript函数?
如何实现点击一个链接,弹出“确认取消”按钮,点击“确认”后,实现跳转,点击“取消”,返回到原来页面。
<BODY> <a href="javascript:goTo()">跳转</a> </BODY> <SCRIPT LANGUAGE="JavaScript"> function goTo() { if(confirm("确认要跳转么?")) { window.location.href = "跳转绝对路径"; } } </SCRIPT>
10 表单提交给action类的时候,如果显示跳转后的空白页,就在action的后面加上.action
<form action="<%=basePath%>upload_upFileOnea.action" method="post" enctype="multipart/form-data">
<p class="upload_title">文件上传</p>
<p class="upload_file_01">
<span>上传系统文件:</span>
<input name="image" type="file" />
<span><s:property value="resultS"/></span>
</p>
<p class="upload_02">
<input type="submit" value="上传" />
</p>
</form>
11在servlet中怎样把int值传递到jsp页面?
我现在在servlet中获得了一个int类型的值,而我的jsp页面要使用这个int值,在servlet中怎样设置传递,在jsp中又怎样获得这个int值?
servlet中: int count;//假设是你要传的值 request.setAttribute("countname", count); jsp中: <% int count=(int)requestsetAttribute("countname");%> 再将得到的值放到相应的位置
12 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
System.out.println(df.format(new java.util.Date()));// new Date()为获取当前系统时间
最简单的入门mybatis例子: http://download.csdn.net/download/hupanfeng/5555187
介绍maven、mybatis项目最好的网站 http://blog.csdn.net/fengshizty/article/details/43019561