1.创建一个表Test用来测试.
1 CREATE TABLE "TEST" 2 ( "AAA" NUMBER(*,0), 3 "BBB" VARCHAR2(10 BYTE) 4 )
2.向Test表中插入测试数据
1 insert into Test values(1,'a'); 2 insert into Test values(2,'b'); 3 insert into Test values(3,'c'); 4 insert into Test values(1,'aaaa'); 5 insert into Test values(2,'bbbbb'); 6 insert into Test values(3,'cccccc');
3.进入主题,创建存储过程
1 2 3 4 5 6 7 8 |
|
4.执行存储过程
1 var type_cur refcursor 2 var para nvarchar2(20) 3 execute :para :='1'; 4 exec pro1(:para,:type_cur); 5 print type_cur;
5.使用程序包package创建存储过程 返回table
1 create or replace package pkg_HelloWorld as 2 type myrctype is ref cursor; --定义游标类型 3 procedure getHelloWorld (param nvarchar2,rst out myrctype); --创建存储过程声明,注:必须与程序包体中的存储过程头相同 4 end pkg_HelloWorld;
6.创建package body包体
create or replace package body pkg_HelloWorld as procedure getHelloWorld(param nvarchar2,rst out myrctype) --注:必须与包声明中相同 as begin open rst for select * from test where AAA=param; end getHelloWorld; end pkg_HelloWorld;
7.调用 使用包,返回table
var type_cur refcursor var para nvarchar2(20) execute :para :='1'; exec PKG_HELLOWORLD.getHelloWorld(:para,:type_cur); print type_cur;
=========================================================================
来自:http://blog.itpub.net/12639172/viewspace-564910/
Asp.Net 访问Oracle的简单例子
1.为灵活设置,将连接字符写在web.config文件中
appSettings>
字串说明:
需要定义Net服务:注意:这种连接方法可能会出现权限问题请参考 我的另一篇随笔解决“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。”(图)
无需定义Net服务:注意: 这种方法有一个问题是,无法想上面的服务那样一次定义服务,在服务下面再定义多个连接
2.为Web 应用程序 添加 System.Data.OracleClient 程序集引用
3.下面是测试的程序
aspx 文件代码如下:
1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AspNetOra._Default" %> 2 34 5 6 title> 7 </head> 8 <body> 9 <form. id="form2" runat="server"> 10 <div> 11 <p> 12 调用一个Oracle连接并执行一条语句测试是否成功<asp:Label ID="Label1" runat="server" ForeColor="Red" Text="">asp:Label> 13 <br /> 14 <asp:Button ID="Button2" runat="server" OnClick="Button1_Click" Text="测试连接是否成功" /> 15 </p> 16 <p> 17 调用给SQL语句执行绑定<br /> 18 <asp:GridView ID="GridView2" runat="server"> 19 asp:GridView> 20 <br /> 21 <asp:Button ID="Button3" runat="server" OnClick="Button2_Click" Text="返回数据集合,绑定Gridview" /> 22 </p> 23 <p> 24 输入输出参数的存储过程调用<br /> 25 <asp:TextBox ID="TextBox1" runat="server">asp:TextBox> 26 <br /> 27 <asp:Button ID="Button4" runat="server" Text="z输入输出参数的存储过程" OnClick="Button3_Click" /> 28 </p> 29 <p> 30 执行返回数据集的Oracle存储过程<br /> 31 <asp:GridView ID="GridView3" runat="server"> 32 asp:GridView> 33 <asp:Button ID="Button5" runat="server" Text="执行存储过程返回数据集" OnClick="Button4_Click" /> 34 </ p> 35 < /div> 36 <form> 37 <body> 38 <html></pre> <p></p> <p class="img-center"><img alt="复制代码" height="20" src="http://img.e-com-net.com/image/info8/a62e1cf0315f4bb3981c884d44d997d9.gif" width="20"></p> <p>aspx.cs 文件代码如下:</p> <table border="0"> <tbody> <tr> <td> <p>1</p> </td> <td> <p></p> </td> </tr> </tbody> </table> <p></p> <p class="img-center"><img alt="复制代码" height="20" src="http://img.e-com-net.com/image/info8/8426d07f2966456fb48edcfdbe1d53b0.gif" width="20"></p> <pre> 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.UI; 6 using System.Web.UI.WebControls; 7 using System.Data.SqlClient; 8 using System.Data.OracleClient; 9 10 namespace AspNetOra 11 { 12 public partial class _Default : System.Web.UI.Page 13 { 14 System.Data.OracleClient.OracleConnection objConn; //声明一个OracleConnection对象 15 16 System.Data.OracleClient.OracleCommand objCmd; //声明一个OracleCommand对象 17 18 string strcon = System.Configuration.ConfigurationManager.AppSettings["oracleconn"]; //从Web.config 文件里调用数据库连接字符串 19 20 protected void Page_Load(object sender, EventArgs e) 21 { 22 23 } 24 /// 25 26 /// 测试连接 27 /// 28 29 /// 30 /// 31 protected void Button1_Click(object sender, EventArgs e) 32 { 33 try 34 { 35 bjConn = new OracleConnection(strcon); //用连接字符串,实例化连接对象 36 37 objConn.Open(); //打开数据库连接 38 39 string strSQL = "select * from sys.test1"; //查询sys建立的test1表的内容 因为我现在用的登录用户不是sys了 40 41 objCmd = new OracleCommand(strSQL, objConn); //用命令和连接对象建立命令实例 42 43 objCmd.ExecuteNonQuery(); 44 45 objConn.Close(); 46 47 this.Label1.Text = "成功"; 48 49 } 50 catch 51 { 52 this.Label1.Text = "失败"; 53 } 54 55 56 } 57 58 /// 59 60 /// 执行SQL 语句返回数据集合 61 /// 62 63 /// 64 /// 65 protected void Button2_Click(object sender, EventArgs e) 66 { 67 bjConn = new OracleConnection(strcon); //用连接字符串,实例化连接对象 68 69 objConn.Open(); //打开数据库连接 70 71 System.Data.OracleClient.OracleDataAdapter adapter = new OracleDataAdapter("select * from sys.test1", objConn); 72 73 System.Data.DataSet ds = new System.Data.DataSet(); 74 75 adapter.Fill(ds); 76 77 GridView1.DataSource = ds.Tables[0].DefaultView; 78 79 GridView1.DataBind(); 80 81 } 82 83 /// 84 85 /// 存储过程输入、输出参数 86 /// 87 /// 存储过程定义如下: 88 /// 89 /// create or replace procedure getName(name_out out varchar2 ,id_in in varchar2) is 90 /// begin 91 /// select NAME into name_out from test1 where id = id_in; 92 /// end getName; 93 /// 94 /// 95 96 /// 97 /// 98 protected void Button3_Click(object sender, EventArgs e) 99 { 100 bjConn = new OracleConnection(strcon); //用连接字符串,实例化连接对象 101 102 objConn.Open(); //打开数据库连接 103 104 OracleCommand cmd = new OracleCommand("getName", objConn); 105 106 cmd.CommandType = System.Data.CommandType.StoredProcedure; 107 108 cmd.Parameters.Add("name_out", OracleType.VarChar, 20); //输出参数,注意名字要与存储过程一致 109 110 cmd.Parameters["name_out"].Direction = System.Data.ParameterDirection.Output; 111 112 cmd.Parameters.Add("id_in", OracleType.VarChar, 20); //输入参数,注意名字要与存储过程一致 113 114 cmd.Parameters["id_in"].Direction = System.Data.ParameterDirection.Input; 115 116 cmd.Parameters["id_in"].Value = "1"; //给输入参数赋值 117 118 cmd.ExecuteNonQuery(); 119 120 this.TextBox1.Text = cmd.Parameters["name_out"].Value.ToString(); //获得输出参数 121 122 123 } 124 125 /// 126 127 /// Oracle存储过程并不直接返回记录集,记录集以游标的形式通过参数返回。一个包(Packages可以包含多个存储过程, 128 /// 访问存储过程时采用“包名.存储过程名”的方式。 129 /// 存储过程是我上一个随笔写的Test,但是上一个存储过程是用Sys建立的,在这里我又重新用当前用户建立的一个属于这个用户的包 130 /// 131 /// 包定义如下: 132 /// 包头: 133 /// create or replace package test is 134 135 /// TYPE MYCURSOR IS REF CURSOR; 136 /// PROCEDURE GETLIST(cur_OUT OUT MYCURSOR); 137 138 /// end test; 139 /// 140 /// 141 /// 142 /// 包体: 143 /// create or replace package body test is 144 145 /// PROCEDURE GETLIST(cur_OUT OUT MYCURSOR) AS 146 /// BEGIN 147 /// OPEN cur_OUT FOR SELECT * FROM test1; 148 /// END; 149 150 /// end test; 151 /// 152 /// 153 /// 154 /// 155 /// 156 /// 157 158 /// 159 /// 160 protected void Button4_Click(object sender, EventArgs e) 161 { 162 bjConn = new OracleConnection(strcon); //用连接字符串,实例化连接对象 163 164 objConn.Open(); //打开数据库连接 165 166 OracleCommand cmd = new OracleCommand("test.GETLIST", objConn); 167 168 cmd.Parameters.Add("cur_OUT", OracleType.Cursor); //注意这里的类型 169 170 cmd.Parameters["cur_OUT"].Direction = System.Data.ParameterDirection.Output; 171 172 cmd.CommandType = System.Data.CommandType.StoredProcedure; 173 174 OracleDataAdapter da = new OracleDataAdapter(cmd); 175 176 System.Data.DataSet ds = new System.Data.DataSet(); 177 178 da.Fill(ds); 179 180 GridView2.DataSource = ds.Tables[0].DefaultView; 181 182 GridView2.DataBind(); 183 184 185 } 186 } 187 }</pre> <p></p> <p class="img-center"><img alt="复制代码" height="20" src="http://img.e-com-net.com/image/info8/c002ae82495348428122638c0a272a56.gif" width="20"></p> <p>========================================================================</p> <pre>这句话很重要,是使用oralce存储过程绑定gridview的关键-> Oracle存储过程并不直接返回记录集,记录集以游标的形式通过参数返回。一个包(Packages可以包含多个存储过程,访问存储过程时采用“包名.存储过程名”的方式。 也可以使用我刚才上面介绍的那种方式,直接使用存储过程返回sys_cursor。 直接使用存储过程sys_cursor与使用Package返回sys_cursor的使用方法完全一样,唯一不同的是调用时的语法略有差异。下面用C#代码写出来,可以与上面的做一下对比。 </pre> <p></p> <p class="img-center"><img alt="复制代码" height="20" src="http://img.e-com-net.com/image/info8/4aed9f71248c4597b70d22e786668e0a.gif" width="20"></p> <pre> using (OracleConnection oraConn = new OracleConnection(DbFactory.GetConnStr(DataBase.Oracle, "192.168.0.1", "test", "1", "1"))) { using (OracleCommand cmd = new OracleCommand("testProc2", oraConn))//只有这里有一点点区别 { cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add("cur_out", OracleDbType.RefCursor); cmd.Parameters["cur_out"].Direction = System.Data.ParameterDirection.Output; using (OracleDataAdapter oraDa = new OracleDataAdapter(cmd)) { DataSet ds = new DataSet(); oraDa.Fill(ds); GridView1.DataSource = ds.Tables[0]; GridView1.DataBind(); } } }</pre> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1688282543666835456"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(oracle,数据库)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1897905535307542528.htm" title="管理RMAN备份_维护RMAN备份和仓库记录" target="_blank">管理RMAN备份_维护RMAN备份和仓库记录</a> <span class="text-muted">数语数行</span> <a class="tag" taget="_blank" href="/search/Oracle%E5%A4%87%E4%BB%BD%E4%B8%8E%E6%81%A2%E5%A4%8D/1.htm">Oracle备份与恢复</a><a class="tag" taget="_blank" href="/search/Oracle/1.htm">Oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/rman/1.htm">rman</a><a class="tag" taget="_blank" href="/search/backup/1.htm">backup</a><a class="tag" taget="_blank" href="/search/RMAN%E5%A4%87%E4%BB%BD/1.htm">RMAN备份</a><a class="tag" taget="_blank" href="/search/%E7%BB%B4%E6%8A%A4/1.htm">维护</a> <div>1.RMAN备份和仓库维护概述1.1.备份和仓库维护的目的建议的维护策略是配置一个快速恢复区域,一个备份保留策略和一个归档redo日志删除策略。在这种情况中,数据库按需要自动维护和删除备份与归档redo日志。然而,有时手动维护数据库备份和归档redo日志是必要的。管理RMAN备份涉及到以下相关的任务:1)管理存储在磁盘或磁带上的数据库备份2)管理在RMAN仓库中的那些备份的记录RMAN维护的一个重</div> </li> <li><a href="/article/1897905408819916800.htm" title="RMAN备份数据库_使用RMAN备份归档redo日志" target="_blank">RMAN备份数据库_使用RMAN备份归档redo日志</a> <span class="text-muted">数语数行</span> <a class="tag" taget="_blank" href="/search/Oracle%E5%A4%87%E4%BB%BD%E4%B8%8E%E6%81%A2%E5%A4%8D/1.htm">Oracle备份与恢复</a><a class="tag" taget="_blank" href="/search/Oracle/1.htm">Oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/archivelog/1.htm">archivelog</a><a class="tag" taget="_blank" href="/search/rman/1.htm">rman</a><a class="tag" taget="_blank" href="/search/backup/1.htm">backup</a><a class="tag" taget="_blank" href="/search/%E5%BD%92%E6%A1%A3%E6%97%A5%E5%BF%97/1.htm">归档日志</a> <div>归档redo日志是成功进行介质恢复的关键,应该定期备份它们。本节主要是介绍非CDB(noncontainerdatabase)也即是非容器数据库的归档redo日志备份。容器数据库的归档redo日志备份请参考官方手册。1.关于非CDB的归档redo日志备份RMAN备份的几个特性是归档redo日志特有的。例如,可以使用BACKUP…DELETE在备份到备份集之后从磁盘中删除一个或所有归档redo日志拷</div> </li> <li><a href="/article/1897894432494120960.htm" title="RMAN备份bug-审计日志暴涨(select action from gv$session)" target="_blank">RMAN备份bug-审计日志暴涨(select action from gv$session)</a> <span class="text-muted">CodeBe@r</span> <a class="tag" taget="_blank" href="/search/%23Oracle/1.htm">#Oracle</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/bug/1.htm">bug</a><a class="tag" taget="_blank" href="/search/%E5%AE%A1%E8%AE%A1%E6%97%A5%E5%BF%97/1.htm">审计日志</a> <div>问题概述/oracle文件系统使用率过大,经过检查是审计日志过大,/oracle目录197G审计日志占用70G,每6个小时产生大量审计日志,日志内容全是'selectactionfromgv$session',猜测可能跟备份有关,$>df-h/oracleFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/fusioncube-oracle197G164</div> </li> <li><a href="/article/1897894053853327360.htm" title="面试基础---MySQL 分布式 ID 方案深度解析" target="_blank">面试基础---MySQL 分布式 ID 方案深度解析</a> <span class="text-muted">WeiLai1112</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a> <div>MySQL分布式ID方案深度解析:UUID、自增ID与雪花算法引言在分布式系统中,生成全局唯一的ID是一个常见的需求。MySQL作为最流行的关系型数据库之一,如何在高并发、分布式环境下生成唯一ID是一个重要的技术挑战。本文将深入探讨MySQL分布式ID的生成方案,包括UUID、自增ID和雪花算法,结合实际项目案例和源码分析,帮助读者深入理解其实现原理。1.分布式ID的需求与挑战在分布式系统中,生成</div> </li> <li><a href="/article/1897868061470420992.htm" title="MyBatis-Plus开发流程:Spring Boot + MyBatis-Plus 实现对 book_tab 表的增删改查及Redis缓存" target="_blank">MyBatis-Plus开发流程:Spring Boot + MyBatis-Plus 实现对 book_tab 表的增删改查及Redis缓存</a> <span class="text-muted">Darling &you&</span> <a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98/1.htm">缓存</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a> <div>前言MyBatis-Plus是一个MyBatis的增强工具,旨在简化开发、减少工作量。本文将介绍如何使用SpringBoot集成MyBatis-Plus来操作数据库,并结合Redis实现数据的缓存功能。1项目搭建1.1创建SpringBoot项目可以通过SpringInitializr快速创建一个新的SpringBoot项目,选择必要的依赖如SpringWeb,MyBatisPlus,MySQLD</div> </li> <li><a href="/article/1897862752874065920.htm" title="Python的那些事第四十篇:Redis的Python客户端Redis-py" target="_blank">Python的那些事第四十篇:Redis的Python客户端Redis-py</a> <span class="text-muted">暮雨哀尘</span> <a class="tag" taget="_blank" href="/search/Python%E7%9A%84%E9%82%A3%E4%BA%9B%E4%BA%8B/1.htm">Python的那些事</a><a class="tag" taget="_blank" href="/search/bootstrap/1.htm">bootstrap</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%93%88%E5%B8%8C%E7%AE%97%E6%B3%95/1.htm">哈希算法</a> <div>Redis-py:Redis的Python客户端摘要本文档旨在提供一个全面的指南,介绍如何使用redis-py——Redis的Python客户端。Redis是一个高性能的键值存储系统,广泛用于缓存、消息队列、数据库等领域。redis-py提供了丰富的API,使得在Python中操作Redis变得简单高效。本文将涵盖安装、基本操作、高级功能以及实例代码,帮助开发者快速上手并应用到实际项目中。1.引言</div> </li> <li><a href="/article/1897853294567550976.htm" title="SHEIN面试——Java高级开发" target="_blank">SHEIN面试——Java高级开发</a> <span class="text-muted">有鹿如溪</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/Java/1.htm">Java</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a> <div>2022年7月20希音二面高级开发工程师(供应链)面试流程1自我介绍2问问题开始多线程:1线程间的通信方式2什么是pua定义3什么是内卷的定义4spring和mybatis怎么操作数据库的5平时工作量怎么定义的6工作技巧7如何提升工作效率8对加班有啥看法9为啥离职耗时:30分钟</div> </li> <li><a href="/article/1897836312665321472.htm" title="Redis" target="_blank">Redis</a> <span class="text-muted">任璐</span> <a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98/1.htm">缓存</a> <div>1.Redis简介简单来说redis就是一个数据库,不过与传统数据库不同的是redis的数据是存在内存中的,所以存写速度非常快,因此redis被广泛应用于缓存方向。另外,redis也经常用来做分布式锁。redis提供了多种数据类型来支持不同的业务场景。除此之外,redis支持事务、持久化、LUA脚本、LRU驱动事件、多种集群方案。2.我们为什么要用redis/为什么要用缓存呢?主要从“高性能”和“</div> </li> <li><a href="/article/1897835048959275008.htm" title="基于TableStore的海量气象格点数据解决方案实战" target="_blank">基于TableStore的海量气象格点数据解决方案实战</a> <span class="text-muted">阿里云云栖号</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%AD%98%E5%82%A8%E4%B8%8E%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据存储与数据库</a><a class="tag" taget="_blank" href="/search/exception/1.htm">exception</a><a class="tag" taget="_blank" href="/search/Java%E6%A0%B8%E5%BF%83%E6%8A%80%E6%9C%AF/1.htm">Java核心技术</a> <div>前言气象数据是一类典型的大数据,具有数据量大、时效性高、数据种类丰富等特点。气象数据中大量的数据是时空数据,记录了时间和空间范围内各个点的各个物理量的观测量或者模拟量,每天产生的数据量常在几十TB到上百TB的规模,且在爆发性增长。如何存储和高效的查询这些气象数据越来越成为一个难题。传统的方案常常采用关系型数据库加文件系统的方式实现这类气象数据的存储和实时查询,这种方案在可扩展性、可维护性和性能上都</div> </li> <li><a href="/article/1897819134176063488.htm" title="最硬核DNS详解" target="_blank">最硬核DNS详解</a> <span class="text-muted">运维开发那些事</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>1、是什么DNS(域名系统)是互联网的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS协议基于UDP协议,使用端口号53。2、域名服务器类型域名服务器在DNS体系中扮演着不同的角色,根据其功能和位置可以分为几种类型。以下是主要的域名服务器类型:根域名服务器:根域名服务器是DNS层次结构的最高层,它们并不直接提供具体的域名解析结果,而是指引查询到正确的顶</div> </li> <li><a href="/article/1897813957289242624.htm" title="分布式事务 CAP三进二和Base定理" target="_blank">分布式事务 CAP三进二和Base定理</a> <span class="text-muted">柿子加油努力</span> <a class="tag" taget="_blank" href="/search/Distributed/1.htm">Distributed</a><a class="tag" taget="_blank" href="/search/Transactions/1.htm">Transactions</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a> <div>关系型数据库遵循ACID原则事务在英文中是transaction,和现实世界中的交易很类似,它有如下四个特性:1、A(Atomicity)原子性原子性很容易理解,也就是说事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务里的所有操作都成功,只要有一个操作失败,整个事务就失败,需要回滚。比如银行转账,从A账户转100元至B账户,分为两个步骤:1)从A账户取100元;2)存入100元至B账</div> </li> <li><a href="/article/1897806773658644480.htm" title="数据库事务,回滚到指定点 oracle java" target="_blank">数据库事务,回滚到指定点 oracle java</a> <span class="text-muted">xiaoyustudiowww</span> <a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a> <div>======oracle表sqlCREATETABLE"SMALL19RAIN"."R_TABLE_STU"("NAME"VARCHAR2(200BYTE),"AGE"NUMBER,"STU_ID"NUMBERNOTNULLENABLE,"DATARAIN"VARCHAR2(200BYTE))SEGMENTCREATIONIMMEDIATEPCTFREE10PCTUSED40INITRANS1MA</div> </li> <li><a href="/article/1897797829380861952.htm" title="MySQL锁机制深度解析:从乐观锁到悲观锁的哲学思辨与技术实践" target="_blank">MySQL锁机制深度解析:从乐观锁到悲观锁的哲学思辨与技术实践</a> <span class="text-muted"></span> <div>一、并发控制的本质与挑战在数据库系统的核心地带,并发控制始终是保障数据一致性的核心命题。当每秒百万级的交易请求在金融系统中穿梭,当电商平台的库存数字在促销瞬间剧烈波动,当社交媒体的点赞计数以指数级增长时,数据库工程师们必须直面并发控制的终极挑战:如何在保证数据一致性的前提下,实现最大程度的并发性能。这个问题的解决之道,本质上是对"时间"这个维度的不同处理策略。悲观锁(PessimisticLock</div> </li> <li><a href="/article/1897784049158647808.htm" title="Java 常见的面试题(MySql)" target="_blank">Java 常见的面试题(MySql)</a> <span class="text-muted">web18285997089</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF/1.htm">学习路线</a><a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/1.htm">阿里巴巴</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a> <div>一、数据库的三范式是什么?**范式:**简言之就是,数据库设计对数据的存储性能,还有开发人员对数据的操作都有莫大的关系。所以建立科学的,规范的的数据库是需要满足一些规范的来优化数据数据存储方式。在关系型数据库中这些规范就可以称为范式。第一范式:当关系模式R的所有属性都不能在分解为更基本的数据单位时,称R是满足第一范式的,简记为1NF。满足第一范式是关系模式规范化的最低要求,否则,将有很多基本操作在</div> </li> <li><a href="/article/1897782789349109760.htm" title="【数据库】第三范式" target="_blank">【数据库】第三范式</a> <span class="text-muted">柠檬鲨_</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>第三范式(ThirdNormalForm,3NF)是数据库设计中的一种规范,它建立在第一范式(1NF)和第二范式(2NF)的基础之上,旨在进一步减少数据冗余和避免更新异常等问题,下面从定义、相关概念、实例分析、优缺点和应用场景几个方面详细介绍:定义若关系模式R满足第二范式(2NF),且每一个非主属性既不部分依赖于码也不传递依赖于码,则称R满足第三范式,记作R∈3NF。简单来说,第三范式要求数据库表</div> </li> <li><a href="/article/1897780896010924032.htm" title="MySQL 8.0版本JDBC驱动Jar包" target="_blank">MySQL 8.0版本JDBC驱动Jar包</a> <span class="text-muted">m0_74823490</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF/1.htm">学习路线</a><a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/1.htm">阿里巴巴</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/jar/1.htm">jar</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>MySQL8.0版本JDBC驱动Jar包【下载地址】MySQL8.0版本JDBC驱动Jar包本仓库提供了MySQL8.0版本的JDBC驱动Jar包。此驱动程序专为与MySQL数据库8.0及以上版本交互设计,确保了对最新数据库特性的全面支持,包括窗口函数、JSON操作增强等,并优化了性能和安全性[这里是图片001]项目地址:https://gitcode.com/open-source-toolki</div> </li> <li><a href="/article/1897777111754665984.htm" title="redis进阶——哈希(Hash)" target="_blank">redis进阶——哈希(Hash)</a> <span class="text-muted">文修</span> <a class="tag" taget="_blank" href="/search/Redis/1.htm">Redis</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/hash/1.htm">hash</a> <div>redis作为最流行的高性能的key-value数据库,笔者几乎每个项目都会用到,不过老实说,笔者在初期只会用string类型,就是说每次都是整存整取,说实话,效率不高,不知道大家有没有像我这样。不过,我知道redis有其他类型,只是因为习惯以及懒的原因,所以长期执着于string类型,后来在空余时间,了解了其他存储方式,一看之后,瞬间就觉得自己以前太low了,今天要说的就是我redis里面的哈希</div> </li> <li><a href="/article/1897776103611756544.htm" title="网络编程-day5-sqlite3数据库" target="_blank">网络编程-day5-sqlite3数据库</a> <span class="text-muted">Ryan_Gosling</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a> <div>思维导图服务器#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includetypedefstructsock</div> </li> <li><a href="/article/1897766879347404800.htm" title="Mysql常用命令" target="_blank">Mysql常用命令</a> <span class="text-muted">长安0511</span> <a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/1024%E7%A8%8B%E5%BA%8F%E5%91%98%E8%8A%82/1.htm">1024程序员节</a> <div>1.数据库管理指令1.1创建数据库CREATEDATABASEdatabase_name[DEFAULTCHARACTERSETcharset_name][DEFAULTCOLLATEcollation_name];功能:创建一个新的数据库。语法参数:database_name:数据库名称,遵循命名规则(如不能包含空格,长度限制等)。DEFAULTCHARACTERSET:可选,指定数据库的默认字</div> </li> <li><a href="/article/1897766752733949952.htm" title="MySql常用命令" target="_blank">MySql常用命令</a> <span class="text-muted">程序缘拉皮</span> <a class="tag" taget="_blank" href="/search/MySQL/1.htm">MySQL</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>目录前言SQL通用语法SQL分类 1.DDLDDL语句对数据库进行操作 2.DMLDML语句对数据库表中的数据进行增删改 3.DQLDQL语句基本查询 4.DCLDCL语句管理用户常用函数CONCATREPLACEUPPER和LOWERSUBSTR、LEFT和RIGHTINSTRLENGTHIFNUL数学函数日期函数约束主键约束(PRIMARYKEY)简写PK自增约束(AOTU_INCRE</div> </li> <li><a href="/article/1897758804771139584.htm" title="Golang的代码自动化生成" target="_blank">Golang的代码自动化生成</a> <span class="text-muted">caihuayuan4</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95%E9%A2%98%E6%B1%87%E6%80%BB%E4%B8%8E%E8%A7%A3%E6%9E%90/1.htm">面试题汇总与解析</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E8%AF%BE%E7%A8%8B%E8%AE%BE%E8%AE%A1/1.htm">课程设计</a> <div>Golang的代码自动化生成一、什么是代码自动化生成代码自动化生成的定义代码自动化生成是指利用工具或程序,在符合一定规则和条件的情况下,自动生成特定的代码结构、模板或文件。这种技术可以大大提高开发效率,降低出错率,同时减少重复劳动,使开发人员能够更专注于解决业务逻辑和技术难题。代码自动化生成的应用代码自动化生成可以应用于许多场景,比如创建模型类、数据库操作代码、API接口定义、文档生成等。通过定义</div> </li> <li><a href="/article/1897754139572629504.htm" title="mysql常用命令" target="_blank">mysql常用命令</a> <span class="text-muted">we19a0sen</span> <a class="tag" taget="_blank" href="/search/%E4%B8%89/1.htm">三</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>命令概览数据库与表操作:创建/删除数据库、设计表结构、修改表字段等基础操作。数据约束与查询:主键、外键、唯一性约束的设置,以及条件查询、聚合函数、连接查询等分析技巧。用户与权限管理:用户创建、密码修改、权限分配,保障数据库安全性。备份与恢复:逻辑备份(mysqldump)、物理备份(数据文件复制)及增量恢复方案。一、数据库操作查看数据库SHOWDATABASES;--查看当前数据库所有表SHOWC</div> </li> <li><a href="/article/1897746065138970624.htm" title="Oracle VirtualBox 给已打开的虚拟机重新设置磁盘大小" target="_blank">Oracle VirtualBox 给已打开的虚拟机重新设置磁盘大小</a> <span class="text-muted">web前端神器</span> <a class="tag" taget="_blank" href="/search/VirtualBox/1.htm">VirtualBox</a> <div>找到virtualbox将对应的目录设置为环境变量。这样VBoxManage命令即可全部调用了。先关闭虚拟机找到虚拟机的vdi文件,此文件存储着系统里所有的文件。然后输入以下命令:VBoxManagemodifyhd"C:\Path\To\YourVM.vdi"--resize51200输入“计算机管理”->“磁盘清理”然后将新开并为分配的空间重新分配即可。</div> </li> <li><a href="/article/1897736212685320192.htm" title="java面试问题大全及答案大全" target="_blank">java面试问题大全及答案大全</a> <span class="text-muted">小白教程</span> <a class="tag" taget="_blank" href="/search/java%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">java面试题</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/java%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">java面试题</a><a class="tag" taget="_blank" href="/search/java%E9%9D%A2%E8%AF%95%E9%97%AE%E9%A2%98%E5%A4%A7%E5%85%A8/1.htm">java面试问题大全</a><a class="tag" taget="_blank" href="/search/java%E9%9D%A2%E8%AF%95%E9%A2%98%E5%B8%A6%E7%AD%94%E6%A1%88/1.htm">java面试题带答案</a><a class="tag" taget="_blank" href="/search/Java%E7%BB%8F%E5%85%B8%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">Java经典面试题</a> <div>文章目录前言java面试题-Java基础java面试题-JVM知识java面试题-多线程与并发java面试题-主流框架java面试题-数据库相关java面试题-分布式与微服务java面试题-网络知识前言该文档围绕Java技术栈展开,全面涵盖了基础、JVM、多线程与并发、主流框架、数据库、分布式、网络等核心知识领域,以面试题及参考答案的形式呈现,为Java开发者提供了系统复习与深入理解的资料。有需要</div> </li> <li><a href="/article/1897734576038539264.htm" title="MAC终端使用sqlcipher生成加密数据库" target="_blank">MAC终端使用sqlcipher生成加密数据库</a> <span class="text-muted">supe_rNiu</span> <a class="tag" taget="_blank" href="/search/%E5%85%B6%E4%BB%96/1.htm">其他</a><a class="tag" taget="_blank" href="/search/sqlcipher/1.htm">sqlcipher</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%8A%A0%E5%AF%86/1.htm">数据库加密</a><a class="tag" taget="_blank" href="/search/%E7%BB%88%E7%AB%AFsqlcipher/1.htm">终端sqlcipher</a> <div>前言:由于新项目中大量数据操作都和数据库有关,因此决定给数据库进行套壳加密,防止数据库被串改或者被有心人查看,对比再三决定使用免费的SQLCipher进行加密。本文是在作者使用mac终端生成加密数据库,使用方法以及踩过的坑都会在本文中一一说明SQLCipher下载链接SQLCipher官方文档SQLCipher下载成功之后放到桌面,打开终端,cd到当前目录下,执行复制大法./configure–e</div> </li> <li><a href="/article/1897726744299892736.htm" title="达梦数据库备份" target="_blank">达梦数据库备份</a> <span class="text-muted">huazhixuthink</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a> <div>达梦数据库联机在线备份操作指南一、基础条件与准备开启归档模式:联机备份必须处于归档模式下,否则无法执行。需通过disql工具执行以下操作:alterdatabasemount;alterdatabaseARCHIVELOG;例子:[dmdba@server~]$cd/opt/dmdbms/bin[dmdba@serverbin]$./disqlSYSDBA/'"Dameng@123"':5236</div> </li> <li><a href="/article/1897720313727217664.htm" title="Python核心技术,Django学习基础入门教程(附环境安装包)" target="_blank">Python核心技术,Django学习基础入门教程(附环境安装包)</a> <span class="text-muted">小白教程</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/Django%E9%A1%B9%E7%9B%AE/1.htm">Django项目</a><a class="tag" taget="_blank" href="/search/Django%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98/1.htm">Django项目实战</a><a class="tag" taget="_blank" href="/search/Django%E6%95%99%E7%A8%8B/1.htm">Django教程</a><a class="tag" taget="_blank" href="/search/Django%E5%85%A5%E9%97%A8%E6%95%99%E7%A8%8B/1.htm">Django入门教程</a> <div>文章目录前言1.环境准备1.1Python安装1.2选择Python开发环境1.3创建虚拟环境1.4安装Django2.创建Django项目3.Django项目结构介绍4.启动开发服务器5.创建Django应用6.应用结构介绍7.编写视图函数8.配置URL映射9.运行项目并访问视图10.数据库配置与模型创建10.1数据库配置10.2创建模型11.使用Django管理界面11.1创建超级用户11.2</div> </li> <li><a href="/article/1897719809525739520.htm" title="Django模型数据修改:详解两种方式" target="_blank">Django模型数据修改:详解两种方式</a> <span class="text-muted">jay丿</span> <a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a> <div>Django模型数据修改:详解两种方式在Django框架中,数据模型(Model)定义了应用的数据结构,并提供了与数据库交互的接口。数据的修改是Django开发中的常见操作之一。本文将详细介绍两种在Django中修改数据的方式:使用模型的save()方法和使用查询集的update()方法。方式一:使用模型的save()方法步骤概述:查询现有记录:首先,使用模型的objects.get()方法根据主</div> </li> <li><a href="/article/1897719683163942912.htm" title="使用 Qt 插件和 SQLCipher 实现 SQLite 数据库加密与解密" target="_blank">使用 Qt 插件和 SQLCipher 实现 SQLite 数据库加密与解密</a> <span class="text-muted">m0_74825108</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF/1.htm">学习路线</a><a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/1.htm">阿里巴巴</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/qt/1.htm">qt</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a> <div>SQLite作为一种轻量级的数据库,被广泛应用于各种桌面和移动应用中。然而,SQLite本身并不支持数据加密,这时SQLCipher成为一个理想的解决方案。本文将详细介绍如何在Qt项目中集成SQLCipher,实现SQLite数据库的加密与解密,包括创建加密数据库、插入数据以及查询数据的完整流程。目录简介前置条件项目配置代码实现创建加密数据库并插入数据读取加密数据库并查询数据常见问题与解决总结简介</div> </li> <li><a href="/article/1897709727941455872.htm" title="MySQL 8密码策略" target="_blank">MySQL 8密码策略</a> <span class="text-muted">数据和云</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>MySQL8提供了较多的密码管理功能和策略,包括密码过期时间设置,密码重用限制,密码验证,双密码,密码强度评估和密码失败跟踪等。DBA使用提供的这些功能和策略对MySQL用户的密码进行管理和配置,进一步完善数据库的安全保障。1密码过期策略MySQL提供参数配置设置全局密码过期时间,也可以创建用户时指定密码过期时间,也可以手动设置某一用户密码过期;系统从用户最近一次密码更新时间计时,当超过其允许的生</div> </li> <li><a href="/article/38.htm" title="ASM系列六 利用TreeApi 添加和移除类成员" target="_blank">ASM系列六 利用TreeApi 添加和移除类成员</a> <span class="text-muted">lijingyao8206</span> <a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/%E5%8A%A8%E6%80%81%E4%BB%A3%E7%90%86/1.htm">动态代理</a><a class="tag" taget="_blank" href="/search/ASM/1.htm">ASM</a><a class="tag" taget="_blank" href="/search/%E5%AD%97%E8%8A%82%E7%A0%81%E6%8A%80%E6%9C%AF/1.htm">字节码技术</a><a class="tag" taget="_blank" href="/search/TreeAPI/1.htm">TreeAPI</a> <div> 同生成的做法一样,添加和移除类成员只要去修改fields和methods中的元素即可。这里我们拿一个简单的类做例子,下面这个Task类,我们来移除isNeedRemove方法,并且添加一个int 类型的addedField属性。 package asm.core; /** * Created by yunshen.ljy on 2015/6/</div> </li> <li><a href="/article/165.htm" title="Springmvc-权限设计" target="_blank">Springmvc-权限设计</a> <span class="text-muted">bee1314</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a> <div> 万丈高楼平地起。 权限管理对于管理系统而言已经是标配中的标配了吧,对于我等俗人更是不能免俗。同时就目前的项目状况而言,我们还不需要那么高大上的开源的解决方案,如Spring Security,Shiro。小伙伴一致决定我们还是从基本的功能迭代起来吧。 目标: 1.实现权限的管理(CRUD) 2.实现部门管理 (CRUD) 3.实现人员的管理 (CRUD) 4.实现部门和权限</div> </li> <li><a href="/article/292.htm" title="算法竞赛入门经典(第二版)第2章习题" target="_blank">算法竞赛入门经典(第二版)第2章习题</a> <span class="text-muted">CrazyMizzz</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>2.4.1 输出技巧 #include <stdio.h> int main() { int i, n; scanf("%d", &n); for (i = 1; i <= n; i++) printf("%d\n", i); return 0; } 习题2-2 水仙花数(daffodil</div> </li> <li><a href="/article/419.htm" title="struts2中jsp自动跳转到Action" target="_blank">struts2中jsp自动跳转到Action</a> <span class="text-muted">麦田的设计者</span> <a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a><a class="tag" taget="_blank" href="/search/webxml/1.htm">webxml</a><a class="tag" taget="_blank" href="/search/struts2/1.htm">struts2</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E8%B7%B3%E8%BD%AC/1.htm">自动跳转</a> <div>1、在struts2的开发中,经常需要用户点击网页后就直接跳转到一个Action,执行Action里面的方法,利用mvc分层思想执行相应操作在界面上得到动态数据。毕竟用户不可能在地址栏里输入一个Action(不是专业人士) 2、<jsp:forward page="xxx.action" /> ,这个标签可以实现跳转,page的路径是相对地址,不同与jsp和j</div> </li> <li><a href="/article/546.htm" title="php 操作webservice实例" target="_blank">php 操作webservice实例</a> <span class="text-muted">IT独行者</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/webservice/1.htm">webservice</a> <div>首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。我测试的环境为:apache2.2.11 php5.2.10做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll; OK 现在我们来体验webservice //server端 serve</div> </li> <li><a href="/article/673.htm" title="Windows下使用Vagrant安装linux系统" target="_blank">Windows下使用Vagrant安装linux系统</a> <span class="text-muted">_wy_</span> <a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/vagrant/1.htm">vagrant</a> <div>准备工作: 下载安装 VirtualBox :https://www.virtualbox.org/ 下载安装 Vagrant :http://www.vagrantup.com/ 下载需要使用的 box : 官方提供的范例:http://files.vagrantup.com/precise32.box 还可以在 http://www.vagrantbox.es/ </div> </li> <li><a href="/article/800.htm" title="更改linux的文件拥有者及用户组(chown和chgrp)" target="_blank">更改linux的文件拥有者及用户组(chown和chgrp)</a> <span class="text-muted">无量</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/chgrp/1.htm">chgrp</a><a class="tag" taget="_blank" href="/search/chown/1.htm">chown</a> <div>本文(转) http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/ http://ydlmlh.iteye.com/blog/1435157 一、基本使用: 使用chown命令可以修改文件或目录所属的用户: 命令</div> </li> <li><a href="/article/927.htm" title="linux下抓包工具" target="_blank">linux下抓包工具</a> <span class="text-muted">矮蛋蛋</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>原文地址: http://blog.chinaunix.net/uid-23670869-id-2610683.html tcpdump -nn -vv -X udp port 8888 上面命令是抓取udp包、端口为8888 netstat -tln 命令是用来查看linux的端口使用情况 13 . 列出所有的网络连接 lsof -i 14. 列出所有tcp 网络连接信息 l</div> </li> <li><a href="/article/1054.htm" title="我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”" target="_blank">我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”</a> <span class="text-muted">alafqq</span> <a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a> <div>最近看了 每一个用mybatis的男纸,你伤不起 原文地址 :http://www.iteye.com/topic/1073938 发表一下个人看法。欢迎大神拍砖; 个人一直使用的是Ibatis框架,公司对其进行过小小的改良; 最近换了公司,要使用新的框架。听说mybatis不错;就对其进行了部分的研究; 发现多了一个mapper层;个人感觉就是个dao; </div> </li> <li><a href="/article/1181.htm" title="解决java数据交换之谜" target="_blank">解决java数据交换之谜</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E4%BA%A4%E6%8D%A2/1.htm">数据交换</a> <div>交换两个数字的方法有以下三种 ,其中第一种最常用 /* 输出最小的一个数 */ public class jiaohuan1 { public static void main(String[] args) { int a =4; int b = 3; if(a<b){ // 第一种交换方式 int tmep =</div> </li> <li><a href="/article/1308.htm" title="渐变显示" target="_blank">渐变显示</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a> <div><style type="text/css"> #wxf { FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#97FF98); height: 25px; } </style></div> </li> <li><a href="/article/1435.htm" title="探索JUnit4扩展:断言语法assertThat" target="_blank">探索JUnit4扩展:断言语法assertThat</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/assertThat/1.htm">assertThat</a> <div>一.概述 JUnit 设计的目的就是有效地抓住编程人员写代码的意图,然后快速检查他们的代码是否与他们的意图相匹配。 JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够</div> </li> <li><a href="/article/1562.htm" title="【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}" target="_blank">【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/gson/1.htm">gson</a> <div> 如何把如下简单的JSON字符串反序列化为Java的POJO对象? {"data":{"IM":["MSN","QQ","Gtalk"]}} 下面的POJO类Model无法完成正确的解析: import com.google.gson.Gson;</div> </li> <li><a href="/article/1689.htm" title="【Kafka九】Kafka High Level API vs. Low Level API" target="_blank">【Kafka九】Kafka High Level API vs. Low Level API</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/kafka/1.htm">kafka</a> <div>1. Kafka提供了两种Consumer API High Level Consumer API Low Level Consumer API(Kafka诡异的称之为Simple Consumer API,实际上非常复杂) 在选用哪种Consumer API时,首先要弄清楚这两种API的工作原理,能做什么不能做什么,能做的话怎么做的以及用的时候,有哪些可能的问题 </div> </li> <li><a href="/article/1816.htm" title="在nginx中集成lua脚本:添加自定义Http头,封IP等" target="_blank">在nginx中集成lua脚本:添加自定义Http头,封IP等</a> <span class="text-muted">ronin47</span> <a class="tag" taget="_blank" href="/search/nginx+lua/1.htm">nginx lua</a> <div>Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。 location /{</div> </li> <li><a href="/article/1943.htm" title="java-归并排序" target="_blank">java-归并排序</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div> import java.util.Arrays; public class MergeSort { public static void main(String[] args) { int[] a={20,1,3,8,5,9,4,25}; mergeSort(a,0,a.length-1); System.out.println(Arrays.to</div> </li> <li><a href="/article/2070.htm" title="Netty源码学习-CompositeChannelBuffer" target="_blank">Netty源码学习-CompositeChannelBuffer</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a> <div>CompositeChannelBuffer体现了Netty的“Transparent Zero Copy” 查看API( http://docs.jboss.org/netty/3.2/api/org/jboss/netty/buffer/package-summary.html#package_description) 可以看到,所谓“Transparent Zero Copy”是通</div> </li> <li><a href="/article/2197.htm" title="Android中给Activity添加返回键" target="_blank">Android中给Activity添加返回键</a> <span class="text-muted">hotsunshine</span> <a class="tag" taget="_blank" href="/search/Activity/1.htm">Activity</a> <div> // this need android:minSdkVersion="11" getActionBar().setDisplayHomeAsUpEnabled(true); @Override public boolean onOptionsItemSelected(MenuItem item) { </div> </li> <li><a href="/article/2324.htm" title="静态页面传参" target="_blank">静态页面传参</a> <span class="text-muted">ctrain</span> <a class="tag" taget="_blank" href="/search/%E9%9D%99%E6%80%81/1.htm">静态</a> <div> $(document).ready(function () { var request = { QueryString : function (val) { var uri = window.location.search; var re = new RegExp("" + val + "=([^&?]*)", &</div> </li> <li><a href="/article/2451.htm" title="Windows中查找某个目录下的所有文件中包含某个字符串的命令" target="_blank">Windows中查找某个目录下的所有文件中包含某个字符串的命令</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/%E6%9F%A5%E6%89%BE%E6%9F%90%E4%B8%AA%E7%9B%AE%E5%BD%95%E4%B8%8B%E7%9A%84%E6%89%80%E6%9C%89%E6%96%87%E4%BB%B6/1.htm">查找某个目录下的所有文件</a><a class="tag" taget="_blank" href="/search/%E5%8C%85%E5%90%AB%E6%9F%90%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2/1.htm">包含某个字符串</a> <div>findstr可以完成这个工作。 [html] view plain copy >findstr /s /i "string" *.* 上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string&qu</div> </li> <li><a href="/article/2578.htm" title="改善程序代码质量的一些技巧" target="_blank">改善程序代码质量的一些技巧</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/%E9%87%8D%E6%9E%84/1.htm">重构</a> <div>有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码 时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。让我们看一些基本的编程技巧: 尽量保持方法简短 尽管很多人都遵</div> </li> <li><a href="/article/2705.htm" title="SharedPreferences对数据的存储" target="_blank">SharedPreferences对数据的存储</a> <span class="text-muted">dcj3sjt126com</span> <div>SharedPreferences简介: &nbs</div> </li> <li><a href="/article/2832.htm" title="linux复习笔记之bash shell (2) bash基础" target="_blank">linux复习笔记之bash shell (2) bash基础</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/bash/1.htm">bash</a><a class="tag" taget="_blank" href="/search/bash+shell/1.htm">bash shell</a> <div>转载请出自出处: http://eksliang.iteye.com/blog/2104329 1.影响显示结果的语系变量(locale) 1.1locale这个命令就是查看当前系统支持多少种语系,命令使用如下: [root@localhost shell]# locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" </div> </li> <li><a href="/article/2959.htm" title="Android零碎知识总结" target="_blank">Android零碎知识总结</a> <span class="text-muted">gqdy365</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>1、CopyOnWriteArrayList add(E) 和remove(int index)都是对新的数组进行修改和新增。所以在多线程操作时不会出现java.util.ConcurrentModificationException错误。 所以最后得出结论:CopyOnWriteArrayList适合使用在读操作远远大于写操作的场景里,比如缓存。发生修改时候做copy,新老版本分离,保证读的高</div> </li> <li><a href="/article/3086.htm" title="HoverTree.Model.ArticleSelect类的作用" target="_blank">HoverTree.Model.ArticleSelect类的作用</a> <span class="text-muted">hvt</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/C%23/1.htm">C#</a><a class="tag" taget="_blank" href="/search/hovertree/1.htm">hovertree</a><a class="tag" taget="_blank" href="/search/asp.net/1.htm">asp.net</a> <div>ArticleSelect类在命名空间HoverTree.Model中可以认为是文章查询条件类,用于存放查询文章时的条件,例如HvtId就是文章的id。HvtIsShow就是文章的显示属性,当为-1是,该条件不产生作用,当为0时,查询不公开显示的文章,当为1时查询公开显示的文章。HvtIsHome则为是否在首页显示。HoverTree系统源码完全开放,开发环境为Visual Studio 2013</div> </li> <li><a href="/article/3213.htm" title="PHP 判断是否使用代理 PHP Proxy Detector" target="_blank">PHP 判断是否使用代理 PHP Proxy Detector</a> <span class="text-muted">天梯梦</span> <a class="tag" taget="_blank" href="/search/proxy/1.htm">proxy</a> <div>1. php 类 I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I'm sure it will help a lot of developers who try to </div> </li> <li><a href="/article/3340.htm" title="apache的math库中的回归——regression(翻译)" target="_blank">apache的math库中的回归——regression(翻译)</a> <span class="text-muted">lvdccyb</span> <a class="tag" taget="_blank" href="/search/Math/1.htm">Math</a><a class="tag" taget="_blank" href="/search/apache/1.htm">apache</a> <div>这个Math库,虽然不向weka那样专业的ML库,但是用户友好,易用。 多元线性回归,协方差和相关性(皮尔逊和斯皮尔曼),分布测试(假设检验,t,卡方,G),统计。 数学库中还包含,Cholesky,LU,SVD,QR,特征根分解,真不错。 基本覆盖了:线代,统计,矩阵, 最优化理论 曲线拟合 常微分方程 遗传算法(GA), 还有3维的运算。。。 </div> </li> <li><a href="/article/3467.htm" title="基础数据结构和算法十三:Undirected Graphs (2)" target="_blank">基础数据结构和算法十三:Undirected Graphs (2)</a> <span class="text-muted">sunwinner</span> <a class="tag" taget="_blank" href="/search/Algorithm/1.htm">Algorithm</a> <div> Design pattern for graph processing. Since we consider a large number of graph-processing algorithms, our initial design goal is to decouple our implementations from the graph representation</div> </li> <li><a href="/article/3594.htm" title="云计算平台最重要的五项技术" target="_blank">云计算平台最重要的五项技术</a> <span class="text-muted">sumapp</span> <a class="tag" taget="_blank" href="/search/%E4%BA%91%E8%AE%A1%E7%AE%97/1.htm">云计算</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%B9%B3%E5%8F%B0/1.htm">云平台</a><a class="tag" taget="_blank" href="/search/%E6%99%BA%E5%9F%8E%E4%BA%91/1.htm">智城云</a> <div>云计算平台最重要的五项技术 1、云服务器 云服务器提供简单高效,处理能力可弹性伸缩的计算服务,支持国内领先的云计算技术和大规模分布存储技术,使您的系统更稳定、数据更安全、传输更快速、部署更灵活。 特性 机型丰富 通过高性能服务器虚拟化为云服务器,提供丰富配置类型虚拟机,极大简化数据存储、数据库搭建、web服务器搭建等工作; 仅需要几分钟,根据CP</div> </li> <li><a href="/article/3721.htm" title="《京东技术解密》有奖试读获奖名单公布" target="_blank">《京东技术解密》有奖试读获奖名单公布</a> <span class="text-muted">ITeye管理员</span> <a class="tag" taget="_blank" href="/search/%E6%B4%BB%E5%8A%A8/1.htm">活动</a> <div>ITeye携手博文视点举办的12月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 12月试读活动回顾: http://webmaster.iteye.com/blog/2164754 本次技术图书试读活动获奖名单及相应作品如下: 一等奖(两名) Microhardest:http://microhardest.ite</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>