同时精通j2ee的高手请进
小弟以前是用j2ee的,现因公司要开发.net版的软件,所以刚开始学asp.net,有以下三个问题想请教高手:
1. asp.net中与j2ee的taglib相对应的功能是什么? 我看了自定义控件或用户控件, 它要先写一个aspx的控件页面,感觉结构不好,不便于分发,要是象j2ee只需发布一个jar那样,能够全部打进dll包里就好了
2. jsp里面在网页中显示内存中图片, 可以用 <img src= ".../servlet "> , 在这个servlet中输出这个图片的字节就可以了, 那么在asp.net中对应的功能又是什么
3. 在java中向SQL语句传参数的示例代码如下:
PreparedStatement pstmt = con.prepareStatement( "insert into table ( id, name ) values ( ?, ? ) " ); //两个问号表示这个SQL语句有两个参数
pstmt.setInt( 1, 2 ); //设第一个参数(即id)的值为整数2
pstmt.setString( 2, "tom " ); //设第二个参数(即name)的值为字符串tom
pstmt.execute();
请问在ADO.NET如何实现这样的功能?请写个简单的示例
[解决办法]
StringBuilder strSql = new StringBuilder();
strSql.Append( "insert into TPIDInfo( ");
strSql.Append(
"xxx) ");
strSql.Append( " values ( ");
strSql.Append(
"@xxx) ");
SqlParameter[] parameters = {
new SqlParameter( "@xxx ", SqlDbType.VarChar, 30)
};
parameters[0].Value = model.xxx;
DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
[解决办法]
第三个问题;(转自msdn)
string selectSQL =
"SELECT CustomerID, CompanyName FROM Customers " +
"WHERE CountryRegion = ? AND City = ? ";
string insertSQL =
"INSERT INTO Customers (CustomerID, CompanyName) " +
"VALUES (?, ?) ";
string updateSQL =
"UPDATE Customers SET CustomerID = ?, CompanyName = ? " +
"WHERE CustomerID = ? ";
string deleteSQL = "DELETE FROM Customers WHERE CustomerID = ? ";
// Assumes that connection is a valid SqlConnection object.
SqlDataAdapter adapter = new SqlDataAdapter();
SqlCommand selectCMD = new SqlCommand(selectSQL, connection);
adapter.SelectCommand = selectCMD;
// Add parameters and set values.
selectCMD.Parameters.Add(
"@CountryRegion ", SqlDbType.NVarChar, 15).Value = "UK ";
selectCMD.Parameters.Add(
"@City ", SqlDbType.NVarChar, 15).Value = "London ";
DataSet customers = new DataSet();
adapter.Fill(customers, "Customers ");
[解决办法]
SqlParameters[] sp = new SqlParameters[2];
sp[0] = new SqlParameters( "参数名1 ", SqlDbType.类型, 长度);
sp[0].Value = 值1;
sp[0] = new SqlParameters( "参数名2 ", SqlDbType.类型, 长度);
sp[0].Value = 值2;
这是加到SqlParameters数组里,把他指定到SqlCommand对象,其他的自己弄吧
[解决办法]
para=new SqlParameter( "@Name ",SqlDbType.VarChar,16);
para.Value=Name;
com.Parameters.Add(para);
通常是这样的
[解决办法]
1. asp.net中与j2ee的taglib相对应的功能是什么? 我看了自定义控件或用户控件, 它要先写一个aspx的控件页面,感觉结构不好,不便于分发,要是象j2ee只需发布一个jar那样,能够全部打进dll包里就好了
---------------------------------------------
做成自定义控件也可以打包到dll中,让所有地方只有,比较常用的例子就是分页控件常这样用
2. jsp里面在网页中显示内存中图片, 可以用 <img src=".../servlet" >, 在这个servlet中输出这个图片的字节就可以了, 那么在asp.net中对应的功能又是什么
---------------------------------------------------
你可以直接链接到1个页面,<img src="../1.aspx"> 然后在1.aspx write出这个图片,常这样用的例子有:验证码。
3. 在java中向SQL语句传参数的示例代码如下:
PreparedStatement pstmt = con.prepareStatement( "insert into table ( id, name ) values ( ?, ? )" ); //两个问号表示这个SQL语句有两个参数
pstmt.setInt( 1, 2 ); //设第一个参数(即id)的值为整数2
pstmt.setString( 2, "tom" ); //设第二个参数(即name)的值为字符串tom
pstmt.execute();
请问在ADO.NET如何实现这样的功能?请写个简单的示例
------------------------------
ADO.NET可以直接对应参数名,这个比JAVA好.
SqlConnecttion con = new SqlConnecttion("连接字符串");
SqlCommand cmd = new SqlCommand("insert into table(id,name) values(@id,@name) ",con);
SqlParameter param1 = new SqlParameters("@id",SqlDbType.Int,4);
SqlParameter param2 = new SqlParameters("@name",SqlDbType.NvarChar,40);
cmd.Params.Add(param1);
cmd.Params.Add(param2);
[解决办法]
<img src="../img.aspx"/> 在img.aspx 输出图片字节 imie 类型为 image
[解决办法]
jsp里面在网页中显示内存中图片, 可以用 <img src=".../servlet" >, 在这个servlet中输出这个图片的字节就可以了, 那么在asp.net中对应的功能又是什么
aspx文件也可以放到dll中吗? 它的url路径是怎么确定的呢?
----------------------------
这个我说的是当前项目的aspx页面,而不是dll中页面。如果你这个<img src=".../servlet" >想像java中直接链接到1个servlet可能不太容易,因为java中只要改下WEB.XML就可以让/servlet这个url对应到你的servlet的类,让你的servlet的类来处理/servlet这个url的请求,而NET这样的需求必须修改IIS的后缀映射。比较麻烦
[解决办法]
好像听说过可以通过工具把aspx页面打包到dll中,不过一直没这样用过,所以也不太清楚
[解决办法]
LZ问题解决了吗
[解决办法]
2、这个显示图片的aspx文件如何放到dll中,还没有解决。或者能否用一个类来代替这个aspx,达到同样的功能
-----------------------------
类应该不行,因为在net中不能直接<img src="类名" />来链接到1个类
[解决办法]
1 aspnet中的自定义控件能和jsp中的taglib相似 并且分发的话只要用dll就行了
用户控件更简单 功能也很强大
2 /servlet只是url重写的 你也可以在aspx中顶一个httphandler 然后重写到该handler中 比如/servimg
一般是是用aspx页面或者ashx页面实现就行了 比较简单
3 看看ADO.NET就可以了
Java在数据库方面一直是抄写微软的吧 感觉是这样的