急需一份使用Java Webjsp和Mysql开发基于BS架构的信息管理系统

急需一份使用Java Webjsp和Mysql开发基于BS架构的信息管理系统,第1张

如果是课程设计的话, 还是以servlet+jsp为主吧, 前端套一个layui的框架, 还是挺好看的, 比如我写的一个成绩信息管理系统, 代码量不太多, 只用到了servlet,jsp, filter等技术,我觉得对技术还是很有提升的

如果是毕业设计, 那就要用到一些mvc框架和orm框架了, 主要是struts2, springmvc, hibernate, mybatis 两两组合

数据进入数据库之前对非法字符进行转义,在更新和显示的时候将非法字符还原

在显示的时候对非法字符进行转义

如果项目还处在起步阶段,建议使用第二种,直接使用jstl的<c:out>标签即可解决非法字符的问题。当然,对于Javascript还需要自己处理一下,写一个方法,在解析从服务器端获取的数据时执行以下escapeHTML()即可。

附:Javascript方法:

StringprototypeescapeHTML = function () {

return thisreplace(/&/g, ‘&’)replace(/>/g, ‘>’)replace(/</g, ‘<’)replace(/”/g, ‘"’);

}

如果项目已经开发完成了,又不想大批量改动页面的话,可以采用第一种方法,此时需要借助Spring MVC的@InitBinder以及orgapachecommonslangPropertyEditorSupport、orgapachecommonslangStringEscapeUtils

public class StringEscapeEditor extends PropertyEditorSupport {

private boolean escapeHTML;

private boolean escapeJavaScript;

private boolean escapeSQL;

public StringEscapeEditor() { super(); }

public StringEscapeEditor(boolean escapeHTML, boolean escapeJavaScript, boolean escapeSQL) {

super();

thisescapeHTML = escapeHTML;

thisescapeJavaScript = escapeJavaScript;

thisescapeSQL = escapeSQL;

}

@Override

public void setAsText(String text) {

if (text == null) {

setValue(null);

57 声明事务

ActiveRecord支持声明式事务,声明式事务需要使用ActiveRecordPlugin提供的拦截器来实现,拦截器的配置方法见Interceptor有关章节。以下代码是声明式事务示例:

// 本例仅为示例, 并未严格考虑账户状态等业务逻辑

@Before(Txclass)

public void trans_demo() {

    // 获取转账金额

    Integer transAmount = getParaToInt("transAmount");

    // 获取转出账户id

    Integer fromAccountId = getParaToInt("fromAccountId");

    // 获取转入账户id

    Integer toAccountId = getParaToInt("toAccountId");

    // 转出 *** 作

    Dbupdate("update account set cash = cash -  where id = ",

 transAmount, fromAccountId);

    // 转入 *** 作

    Dbupdate("update account set cash = cash +  where id = ",

 transAmount, toAccountId);

}

以上代码中,仅声明了一个Tx拦截器即为action添加了事务支持。除此之外ActiveRecord还配备了TxByActionKeys、TxByActionKeyRegex、TxByMethods、TxByMethodRegex,分别支持actionKeys、actionKey正则、actionMethods、actionMethod正则声明式事务,以下是示例代码:

public void configInterceptor(Interceptors me) {

   meadd(new TxByMethodRegex("(save|update)"));

   meadd(new TxByMethods("save", "update"));

 

   meadd(new TxByActionKeyRegex("/trans"));

   meadd(new TxByActionKeys("/tx/save", "/tx/update"));

}

上例中的TxByRegex拦截器可通过传入正则表达式对action进行拦截,当actionKey被正则匹配上将开启事务。TxByActionKeys可以对指定的actionKey进行拦截并开启事务,TxByMethods可以对指定的method进行拦截并开启事务。

注意:MySql数据库表必须设置为InnoDB引擎时才支持事务,MyISAM并不支持事务。

网页链接

以上就是关于急需一份使用Java Web/jsp和Mysql开发基于B/S架构的信息管理系统全部的内容,包括:急需一份使用Java Web/jsp和Mysql开发基于B/S架构的信息管理系统、大家畅所欲言,当jFinal遇到XSS和SQL注入怎么处理、jfinal声明式事务怎样配置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9512200.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存