十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
方法1:可以利用ServletContext类的对象application解决,这个属于整个web应用都公用的内部对象。例如在监听器中
创新互联建站于2013年创立,是专业互联网技术服务公司,拥有项目网站设计、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元黄陂做网站,已为上家服务,为黄陂各地企业和个人服务,联系电话:18980820575
public class GetConnListener implements ServletContextListener {
//例如这个是要传的数据
String data="0";
//当此web应用被访问后启用该方法
public void contextInitialized(ServletContextEvent sce) {
//创建application
ServletContext application=sce.getServletContext();
//将数据存入application的属性中
application.setAttribute("Data",data);}
然后再JSP页面,的JSP脚本中写入
String data=(String)sapplication.getAttribute("Data");
out.print(data);
就能狗获取和输出这个数据了。
方法二便是直接在JAVA中把数据存入数据库,JSP从数据库中读出数据。
//得到JLabel用户输入的值
textn=...
//拼sql语句
sql = insert into table() values();
//获取数据库连接
Connection conn = MySQLText.dbConn();
//将数据插入数据库
MySQLText.dbUpdate(sql);
另外,依我个人的建议:
static Statement stmt=null;
static ResultSet rs=null;
把Statement, ResultSet 做为类变量不妥吧,很容易出现并发问题。建议把它们作为局部变量。一个Statement一次只能使用一个ResultSet的,用完就要关闭。
你只能监控从JAVA端对数据库的操作(CURD),可统一在切面拦截时进行写日志的操作,如果要监控用户通过第三方软件连接到数据库的操作,你只能读取MYSQL日志进行分析了。