小女巫 发表于 2015-1-16 22:17:13

MYSQL网页编程之jsp中挪用Bean,然后在Bean中挪用oracl...

DBaaS会导致单一客户利润率的下降,因为云服务一般是依靠MySQL学习教程数来抵消较低的利润率。  老手在写程序时,必定要胆大心小,并且要有耐烦,不当协,不懂就翻书,网上查材料,问伴侣,坚定举行究竟。
  比来一向凭着ASP的常识在探索中行进,一跑崎岖,自不必说了。言回正传。
  创建一个登录体系,请求到达以下目标。
  1、用户经由过程Bean来认证和失掉失掉用户信息。
  2、纪录用户登录信息,如用户登录次数,最初登录工夫。
  3、纪录操纵日记。
  未办理及困惑的成绩:
  1、用户登录后的Session是不是能够经由过程Bean来判别。
  2、经由过程Bean挪用ORACLE存储历程,前往select后的纪录集。
  操纵步骤:
  1、创建用户考证Bean:
 publicbooleancheckUser()throwsException{
  booleanflag=false;
  ResultSetrs=conn.executeQuery(getSql());
  if(rs.next()){
   userID    =rs.getString("userID");
   userName   =rs.getString("userName");
   userPWD   =rs.getString("userPWD");
   userUnit   =rs.getString("userUnit");
   userLoadTime =rs.getDate("userLoadTime");
   userLoadNumeric=rs.getInt("userLoadNumber");
   flag=true;
  }
  rs.close();
  conn.closeConn();
  returnflag;
 }  经由过程前往的值判断用户是不是存在。
  2、纪录用户登录信息:
publicvoidchangeLoginInfo(StringuserID)throwsException{
  Stringsql="updateSystemUserTablesetUserLoadTime=sysdate,UserLoadNumber=UserLoadNumber+1whereuserID="+userID+"";
  conn.executeUpdate(sql);
 }  3、纪录操纵日记:
  第一步,创建存储历程
createorreplaceprocedureproc_writeNote(
 descriptioninvarchar2,
 wNameinvarchar2,
 wIPinvarchar2
 )
is
begin
 insertintoSystemnote(Id,Description,Wname,Wip)values(Autoaddid.Nextval,description,wName,wIP);
 commit;
endproc_writeNote;  第二步、创建操纵存储历程的办法(重写prepareCall()办法)
 publicCallableStatementprepareCall(Stringproduce){
  try{
   conn=DriverManager.getConnection(DBUrl,UserID,UserPWD);
   cstmt=conn.prepareCall(produce);
  }
  catch(SQLExceptionex){
   System.err.print("prepareCall():"+ex.getMessage());
  }
  returncstmt;
 }  第三步,实行存储历程
 publicvoidwriteNote(Stringdescription,StringwName,StringwIP){
  Stringsql="{callproc_writeNote(?,?,?)}";
  try{
   CallableStatementcstmt=conn.prepareCall(sql);
   cstmt.setString(1,description);
   cstmt.setString(2,wName);
   cstmt.setString(3,wIP);
   cstmt.executeUpdate();
  }
  catch(SQLExceptionex){
   System.out.print("writeNote():"+ex.getMessage());
  }
 }RDBMS并非没有局限性。它们难以扩展,需要大量的资源来配置和维护,比如时间、硬件和人力。同样,它们往往遵循峰值性能模型,这就要求系统按照峰值容量来配置可用性,而不考虑典型的数据使用情况。

再现理想 发表于 2015-1-19 06:47:01

原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。

灵魂腐蚀 发表于 2015-1-26 16:22:40

多加的系统视图和实时系统信息这些东西对DBA挑优非常有帮助,但是感觉粒度还是不太细。

飘灵儿 发表于 2015-2-4 20:31:09

不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关

再见西城 发表于 2015-2-10 07:32:14

个人感觉没有case直观。而且默认的第三字段(还可能更多)作为groupby字段很容易造成新手的错误。

仓酷云 发表于 2015-3-1 03:17:17

不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?

乐观 发表于 2015-3-10 12:42:17

换言之,只有在不断的失败中尝试成功,而关于失败的总结却是很少的

蒙在股里 发表于 2015-3-17 07:11:25

是要和操作系统进行Socket通讯的场景。否则建议慎重!

活着的死人 发表于 2015-3-24 02:17:41

这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
页: [1]
查看完整版本: MYSQL网页编程之jsp中挪用Bean,然后在Bean中挪用oracl...