RE: About RowSet

2002-11-20 Thread Savantraj, Chennamakal Subramanian
Hi,
We are using Code Table concept .But sometimes /,most of the times you may
need a SQL which is lin
king few Tables to create the required result. So we want to make our
Programmers life easy and also 
want to Standardise. Another objective is to provide Data Security. For
Example One Department Should not 
see other Departments Customers. We have very detail application security
setup which is part of our framework(STRUTS++),
leaving the application team free to think only about the Business Logic.
So my only concern here is Performance / Ideal Design.
It would be great if you can comment on the following portion of my previous
mail.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>
>This looks a deviation from Model 2 Approach.
> 
>   So alternatively I was thinking to populate some Collection using
> some standard Method defined and then pass
> this collection to Custom Tag. This is definitely a good approach in
> Architecture sense.But if I consider the performance factor this looks a
bit
> expensive. Reason is simple, I need to run the SQL and execute a loop on
> ResultSet to create the Collection. Then in the custom Tag I need to run
> another loop on Collection to generate HTML.This effect can be really
> considerable in case of pages with many DropDowns.
>   Returning resultset is another option which will leave me Statement
> unclosed. I heard somwhere that ResultSet can be assigned to RowSet
without
> any loops. Also I can close the Statement and return the connection.
> Hope this will explain my situation better.Pls advise.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>.>>

Thanks a Lot for your advises.
Best Regards
Savant

-Original Message-
From: V. Cekvenich [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, November 20, 2002 9:24 PM
To: [EMAIL PROTECTED]
Subject: Re: About RowSet


Perhaps you wanted to create a SQL Super type. This is a commons sql 
design, it goes like this.

Thre are many types, codes, and decodes in SQL.
Newbies solve it like this.
Table States: StateCode, StateName;
Table Status: StatusCode, Status
Table NextStep: Step, Name
Table Type: Type, Name
etc. etc.

Thus creating many code tables and poulting the model and not be able to 
write OO.

The solution is a super type table that decodes all types like this:
Type, Code, Name
Ex:
State, NY, New York
Status, Closed, Closed

etc.

So one table to stroe all the types.

Then write a simple bean 2, properties, name/value.
Then write a helper bean that returns a collection of properties above, 
based on type.
So find("states");
or find("status");

I should upload this example up to bP.
My invoice is on the way.
hth,
V.
917 345 1445
[EMAIL PROTECTED]

Savantraj, Chennamakal Subramanian wrote:
> Hi,
> 
> Thanks for your reply. I think I failed to share my objective clearly with
> you.
> What we are planning to do is
>   1. Create a DB Table with two columns
>   {ID  VARCHAR2(20)
>SQL_STMT VARCHAR2(1000)}
>   2. Register the SQL statement with an ID in DB
>   For Example for a Customer Drop Down generation I will have
> a record like
>   ID- CUSTDD001
>   SQL_STMT - SELECT Cust_Cd,Cust_Nm from Customer 
>   3. Write a Custom Tag Which will take this ID as an Argument
>   4. Custom Tag will retrieve the SQL_STMT based on ID ,then execute a
> loop on the resultset 
>   and return an HTML output like 
>   
>   CustNm1
>   CustNm1
>   CustNm1
>   
>   
>   This looks a deviation from Model 2 Approach.
> 
>   So alternatively I was thinking to populate some Collection using
> some standard Method defined and then pass
> this collection to Custom Tag. This is definitely a good approach in
> Architecture sense.But if I consider the performance factor this looks a
bit
> expensive. Reason is simple, I need to run the SQL and execute a loop on
> ResultSet to create the Collection. Then in the custom Tag I need to run
> another loop on Collection to generate HTML.This effect can be really
> considerable in case of pages with many DropDowns.
>   Returning resultset is another option which will leave me Stat

Re: About RowSet

2002-11-20 Thread V. Cekvenich
I forgot to add... this way you can use the options collection tag. 
Writing your own tags is something you want to reduce.
.V

V. Cekvenich wrote:
Which is not very Model2.
Anytime you do something is JSP or EL. you are writing logic in the 
View, which is not the layered approach, thus less efficient.
Write less in View! Unless you are off loading processing to Browser via 
.js functions (javascript).

Much better to prepare everything ahead of the JSP/View.

.V

edgar wrote:

http://jakarta.apache.org/taglibs/doc/dbtags-doc/intro.html

I think this is what you are looking for.

-Original Message-
From: Savantraj, Chennamakal Subramanian [mailto:[EMAIL PROTECTED]]

Sent: Tuesday, November 19, 2002 10:24 PM
To: 'Struts Users Mailing List'
Subject: About RowSet


Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet? What is the significance difference using a rowset instead of
our custom generated collection object or something like TableModel?
What would be a better option for the following situation.

Objective
1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set. Approach 1
1. Run the SQL
2. Populate Collection (RowSet/TableModel/Any other) from
ResultSet
3. Pass the collection to Custom Tag
4. Custom Tag will generate  based on
the collection.

In the above scenario will I save any processing (Looping) if I use
RowSet? If I am using my own collection I need to run Loop 1 to create
the collection and Loop 2 inside Custom Tag to generate HTML. RowSet
looks like saving the first loop. But how it is internally doing? Is it
the same way?

Pls provide your advice.

Thanks in advance

Best Regards
Savant


---
This email is confidential and intended only for the use of the
individual or entity named above and may contain information that is
privileged. If you are not the intended recipient, you are notified that
any dissemination, distribution or copying of this email is strictly
prohibited. If you have received this email in error, please notify us
immediately by return email or telephone and destroy the original
message. Thank you. - This mail is sent via Sony Asia Pacific Mail
Gateway. 
---


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>






--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>




Re: About RowSet

2002-11-20 Thread V. Cekvenich
Perhaps you wanted to create a SQL Super type. This is a commons sql 
design, it goes like this.

Thre are many types, codes, and decodes in SQL.
Newbies solve it like this.
Table States: StateCode, StateName;
Table Status: StatusCode, Status
Table NextStep: Step, Name
Table Type: Type, Name
etc. etc.

Thus creating many code tables and poulting the model and not be able to 
write OO.

The solution is a super type table that decodes all types like this:
Type, Code, Name
Ex:
State, NY, New York
Status, Closed, Closed

etc.

So one table to stroe all the types.

Then write a simple bean 2, properties, name/value.
Then write a helper bean that returns a collection of properties above, 
based on type.
So find("states");
or find("status");

I should upload this example up to bP.
My invoice is on the way.
hth,
V.
917 345 1445
[EMAIL PROTECTED]

Savantraj, Chennamakal Subramanian wrote:
Hi,

Thanks for your reply. I think I failed to share my objective clearly with
you.
What we are planning to do is
	1. Create a DB Table with two columns
		{ID  VARCHAR2(20)
		 SQL_STMT VARCHAR2(1000)}
	2. Register the SQL statement with an ID in DB
		For Example for a Customer Drop Down generation I will have
a record like
		ID- CUSTDD001
		SQL_STMT - SELECT Cust_Cd,Cust_Nm from Customer 
	3. Write a Custom Tag Which will take this ID as an Argument
	4. Custom Tag will retrieve the SQL_STMT based on ID ,then execute a
loop on the resultset 
	and return an HTML output like 
	
			CustNm1
			CustNm1
			CustNm1
	
	
	This looks a deviation from Model 2 Approach.

	So alternatively I was thinking to populate some Collection using
some standard Method defined and then pass
this collection to Custom Tag. This is definitely a good approach in
Architecture sense.But if I consider the performance factor this looks a bit
expensive. Reason is simple, I need to run the SQL and execute a loop on
ResultSet to create the Collection. Then in the custom Tag I need to run
another loop on Collection to generate HTML.This effect can be really
considerable in case of pages with many DropDowns.
	Returning resultset is another option which will leave me Statement
unclosed. I heard somwhere that ResultSet can be assigned to RowSet without
any loops. Also I can close the Statement and return the connection.
Hope this will explain my situation better.Pls advise.

Thanks & Regards
Savant
	




-Original Message-
From: V. Cekvenich [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, November 20, 2002 7:36 PM
To: [EMAIL PROTECTED]
Subject: Re: About RowSet


http://www.javaworld.com/javaworld/jw-02-2001/jw-0202-cachedrow.html as 
per google, or you can read the JavaDoc on rowset in Java Developers 
Connection on JavaSoft.com.

You should either use RowSet or Resultset, not sure of why mix.
RowSet extends ResultSet, major difference that former is a bean, that 
is you can say new RowSet(), thus making GC a bit easier for new 
developers who do not do the nested finally right for the ResultSet.

Since you are posting on Struts, I assume you would use existing tags, 
as opposed to writing tags.

There is a source code approach with "zero" copy on basicPortal.sf.net.
A DAO has a ROWSET. (or CommonsSQL - 2 ways)
A Bean has a DAO.
DAO is also an iterator, and Bean is also a Collection(advanced topic: 
even as your treat this bean for testing with bean properties, Struts 
sees it as a collection (iterator adaptor w getRow), so it can do multi 
row updates, for master detail processing).
You unit test the Bean, so it can be used by Console, Model1 use bean, etc.

The benefit of this design is that when a setter is fired by Struts, it 
is on the disconnected RowSet, thus Zero copy.
There are no VO, DTO, etc. objects that are GCed later, thus you can 
support more concurrent users per server.

Not sure what loops or populations you are talking about, but there is a 
rowset DAO w/ Struts on sf.net

Above is for any bean.

For options collection, you can create an collection of beans, with 2 
properties. Again, do not use Resultset for beans, and RowSet for 
options, it makes no sense.

hth,
.V

ot: I will soon have a DAO that also uses Commons SQL so you can chose 
RowSet or CommonSQL (else you write your own DAO, to say JDO)

Savantraj, Chennamakal Subramanian wrote:

Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet?
What is the significance difference using a rowset instead of our custom
generated
collection object or something like TableModel?
What would be a better option for the following situation.

Objective
	1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set.
Approach 1
	1. Run the SQL
	2. Populate Collection (RowSet/TableModel/Any other) from ResultSet
	3. Pass the collection to Custom Tag
	4. Custom Tag will generate  based on the
collection.

In the above scenario will I save any processing (Looping) if I use


RowSet?


If I am using my own

RE: About RowSet

2002-11-20 Thread Savantraj, Chennamakal Subramanian
Hi,

Thanks for your reply. I think I failed to share my objective clearly with
you.
What we are planning to do is
1. Create a DB Table with two columns
{ID  VARCHAR2(20)
 SQL_STMT VARCHAR2(1000)}
2. Register the SQL statement with an ID in DB
For Example for a Customer Drop Down generation I will have
a record like
ID- CUSTDD001
SQL_STMT - SELECT Cust_Cd,Cust_Nm from Customer 
3. Write a Custom Tag Which will take this ID as an Argument
4. Custom Tag will retrieve the SQL_STMT based on ID ,then execute a
loop on the resultset 
and return an HTML output like 

CustNm1
CustNm1
CustNm1


This looks a deviation from Model 2 Approach.

So alternatively I was thinking to populate some Collection using
some standard Method defined and then pass
this collection to Custom Tag. This is definitely a good approach in
Architecture sense.But if I consider the performance factor this looks a bit
expensive. Reason is simple, I need to run the SQL and execute a loop on
ResultSet to create the Collection. Then in the custom Tag I need to run
another loop on Collection to generate HTML.This effect can be really
considerable in case of pages with many DropDowns.
Returning resultset is another option which will leave me Statement
unclosed. I heard somwhere that ResultSet can be assigned to RowSet without
any loops. Also I can close the Statement and return the connection.
Hope this will explain my situation better.Pls advise.

Thanks & Regards
Savant





-Original Message-
From: V. Cekvenich [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, November 20, 2002 7:36 PM
To: [EMAIL PROTECTED]
Subject: Re: About RowSet


http://www.javaworld.com/javaworld/jw-02-2001/jw-0202-cachedrow.html as 
per google, or you can read the JavaDoc on rowset in Java Developers 
Connection on JavaSoft.com.

You should either use RowSet or Resultset, not sure of why mix.
RowSet extends ResultSet, major difference that former is a bean, that 
is you can say new RowSet(), thus making GC a bit easier for new 
developers who do not do the nested finally right for the ResultSet.

Since you are posting on Struts, I assume you would use existing tags, 
as opposed to writing tags.

There is a source code approach with "zero" copy on basicPortal.sf.net.
A DAO has a ROWSET. (or CommonsSQL - 2 ways)
A Bean has a DAO.
DAO is also an iterator, and Bean is also a Collection(advanced topic: 
even as your treat this bean for testing with bean properties, Struts 
sees it as a collection (iterator adaptor w getRow), so it can do multi 
row updates, for master detail processing).
You unit test the Bean, so it can be used by Console, Model1 use bean, etc.

The benefit of this design is that when a setter is fired by Struts, it 
is on the disconnected RowSet, thus Zero copy.
There are no VO, DTO, etc. objects that are GCed later, thus you can 
support more concurrent users per server.

Not sure what loops or populations you are talking about, but there is a 
rowset DAO w/ Struts on sf.net

Above is for any bean.

For options collection, you can create an collection of beans, with 2 
properties. Again, do not use Resultset for beans, and RowSet for 
options, it makes no sense.

hth,
.V

ot: I will soon have a DAO that also uses Commons SQL so you can chose 
RowSet or CommonSQL (else you write your own DAO, to say JDO)

Savantraj, Chennamakal Subramanian wrote:
> Hi,
> Could anyone share your experience in using RowSet to Transfer data from
> ResultSet?
> What is the significance difference using a rowset instead of our custom
> generated
> collection object or something like TableModel?
> What would be a better option for the following situation.
> 
> Objective
>   1. Create a Custom Tag which will generate a Table HTML Display
> based on a Result Set.
> Approach 1
>   1. Run the SQL
>   2. Populate Collection (RowSet/TableModel/Any other) from ResultSet
>   3. Pass the collection to Custom Tag
>   4. Custom Tag will generate  based on the
> collection.
> 
> In the above scenario will I save any processing (Looping) if I use
RowSet?
> If I am using my own
> collection I need to run Loop 1 to create the collection and Loop 2 inside
> Custom Tag to generate
> HTML. RowSet looks like saving the first loop. But how it is internally
> doing? Is it the same way?
> 
> Pls provide your advice.
> 
> Thanks in advance
> 
> Best Regards
> Savant
>   
> 
> ---
> This email is confidential and intended only for the use of the individual
> or entity named above and may contain information that is privileged. If
you
>

Re: About RowSet

2002-11-20 Thread V. Cekvenich
Which is not very Model2.
Anytime you do something is JSP or EL. you are writing logic in the 
View, which is not the layered approach, thus less efficient.
Write less in View! Unless you are off loading processing to Browser via 
.js functions (javascript).

Much better to prepare everything ahead of the JSP/View.

.V

edgar wrote:
http://jakarta.apache.org/taglibs/doc/dbtags-doc/intro.html

I think this is what you are looking for.

-Original Message-
From: Savantraj, Chennamakal Subramanian [mailto:[EMAIL PROTECTED]]

Sent: Tuesday, November 19, 2002 10:24 PM
To: 'Struts Users Mailing List'
Subject: About RowSet


Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet? What is the significance difference using a rowset instead of
our custom generated collection object or something like TableModel?
What would be a better option for the following situation.

Objective
	1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set. Approach 1
	1. Run the SQL
	2. Populate Collection (RowSet/TableModel/Any other) from
ResultSet
	3. Pass the collection to Custom Tag
	4. Custom Tag will generate  based on
the collection.

In the above scenario will I save any processing (Looping) if I use
RowSet? If I am using my own collection I need to run Loop 1 to create
the collection and Loop 2 inside Custom Tag to generate HTML. RowSet
looks like saving the first loop. But how it is internally doing? Is it
the same way?

Pls provide your advice.

Thanks in advance

Best Regards
Savant
	

---
This email is confidential and intended only for the use of the
individual or entity named above and may contain information that is
privileged. If you are not the intended recipient, you are notified that
any dissemination, distribution or copying of this email is strictly
prohibited. If you have received this email in error, please notify us
immediately by return email or telephone and destroy the original
message. Thank you. - This mail is sent via Sony Asia Pacific Mail
Gateway. 
---


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>




RE: About RowSet

2002-11-20 Thread edgar
http://jakarta.apache.org/taglibs/doc/dbtags-doc/intro.html

I think this is what you are looking for.

-Original Message-
From: Savantraj, Chennamakal Subramanian [mailto:[EMAIL PROTECTED]]

Sent: Tuesday, November 19, 2002 10:24 PM
To: 'Struts Users Mailing List'
Subject: About RowSet


Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet? What is the significance difference using a rowset instead of
our custom generated collection object or something like TableModel?
What would be a better option for the following situation.

Objective
1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set. Approach 1
1. Run the SQL
2. Populate Collection (RowSet/TableModel/Any other) from
ResultSet
3. Pass the collection to Custom Tag
4. Custom Tag will generate  based on
the collection.

In the above scenario will I save any processing (Looping) if I use
RowSet? If I am using my own collection I need to run Loop 1 to create
the collection and Loop 2 inside Custom Tag to generate HTML. RowSet
looks like saving the first loop. But how it is internally doing? Is it
the same way?

Pls provide your advice.

Thanks in advance

Best Regards
Savant


---
This email is confidential and intended only for the use of the
individual or entity named above and may contain information that is
privileged. If you are not the intended recipient, you are notified that
any dissemination, distribution or copying of this email is strictly
prohibited. If you have received this email in error, please notify us
immediately by return email or telephone and destroy the original
message. Thank you. - This mail is sent via Sony Asia Pacific Mail
Gateway. 
---


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>




Re: About RowSet

2002-11-20 Thread V. Cekvenich
http://www.javaworld.com/javaworld/jw-02-2001/jw-0202-cachedrow.html as 
per google, or you can read the JavaDoc on rowset in Java Developers 
Connection on JavaSoft.com.

You should either use RowSet or Resultset, not sure of why mix.
RowSet extends ResultSet, major difference that former is a bean, that 
is you can say new RowSet(), thus making GC a bit easier for new 
developers who do not do the nested finally right for the ResultSet.

Since you are posting on Struts, I assume you would use existing tags, 
as opposed to writing tags.

There is a source code approach with "zero" copy on basicPortal.sf.net.
A DAO has a ROWSET. (or CommonsSQL - 2 ways)
A Bean has a DAO.
DAO is also an iterator, and Bean is also a Collection(advanced topic: 
even as your treat this bean for testing with bean properties, Struts 
sees it as a collection (iterator adaptor w getRow), so it can do multi 
row updates, for master detail processing).
You unit test the Bean, so it can be used by Console, Model1 use bean, etc.

The benefit of this design is that when a setter is fired by Struts, it 
is on the disconnected RowSet, thus Zero copy.
There are no VO, DTO, etc. objects that are GCed later, thus you can 
support more concurrent users per server.

Not sure what loops or populations you are talking about, but there is a 
rowset DAO w/ Struts on sf.net

Above is for any bean.

For options collection, you can create an collection of beans, with 2 
properties. Again, do not use Resultset for beans, and RowSet for 
options, it makes no sense.

hth,
.V

ot: I will soon have a DAO that also uses Commons SQL so you can chose 
RowSet or CommonSQL (else you write your own DAO, to say JDO)

Savantraj, Chennamakal Subramanian wrote:
Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet?
What is the significance difference using a rowset instead of our custom
generated
collection object or something like TableModel?
What would be a better option for the following situation.

Objective
	1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set.
Approach 1
	1. Run the SQL
	2. Populate Collection (RowSet/TableModel/Any other) from ResultSet
	3. Pass the collection to Custom Tag
	4. Custom Tag will generate  based on the
collection.

In the above scenario will I save any processing (Looping) if I use RowSet?
If I am using my own
collection I need to run Loop 1 to create the collection and Loop 2 inside
Custom Tag to generate
HTML. RowSet looks like saving the first loop. But how it is internally
doing? Is it the same way?

Pls provide your advice.

Thanks in advance

Best Regards
Savant
	

---
This email is confidential and intended only for the use of the individual
or entity named above and may contain information that is privileged. If you
are not the intended recipient, you are notified that any dissemination,
distribution or copying of this email is strictly prohibited. If you have
received this email in error, please notify us immediately by return email
or telephone and destroy the original message. Thank you. - This mail is
sent via Sony Asia Pacific Mail Gateway. 
---




--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




About RowSet

2002-11-19 Thread Savantraj, Chennamakal Subramanian
Hi,
Could anyone share your experience in using RowSet to Transfer data from
ResultSet?
What is the significance difference using a rowset instead of our custom
generated
collection object or something like TableModel?
What would be a better option for the following situation.

Objective
1. Create a Custom Tag which will generate a Table HTML Display
based on a Result Set.
Approach 1
1. Run the SQL
2. Populate Collection (RowSet/TableModel/Any other) from ResultSet
3. Pass the collection to Custom Tag
4. Custom Tag will generate  based on the
collection.

In the above scenario will I save any processing (Looping) if I use RowSet?
If I am using my own
collection I need to run Loop 1 to create the collection and Loop 2 inside
Custom Tag to generate
HTML. RowSet looks like saving the first loop. But how it is internally
doing? Is it the same way?

Pls provide your advice.

Thanks in advance

Best Regards
Savant


---
This email is confidential and intended only for the use of the individual
or entity named above and may contain information that is privileged. If you
are not the intended recipient, you are notified that any dissemination,
distribution or copying of this email is strictly prohibited. If you have
received this email in error, please notify us immediately by return email
or telephone and destroy the original message. Thank you. - This mail is
sent via Sony Asia Pacific Mail Gateway. 
---


--
To unsubscribe, e-mail:   
For additional commands, e-mail: