Serialization Objects in column of row in MySQL
Hi :)
I have class with different methods, each of this methods make large operation in database (Hibernate3 + MySQL).
I consider situation when my application may crush, and in proccess of recovering I recover objects-parameters for my different methods.
I want to use simple Java serialization object (ObjectInputStream and ObjectOutputStream) and save this bytes in column of row in MySQL, but
in future I'm afraid that fields of parameter-objects of my methods changed (will be add new fields, deleted fields), and I can't deserialize my parameter-objects from MySQL. I know one decision - serialization objects in XML and save XML in DB, but may be somebody offers other variants of saving my object-parameters more quickly than XML.
Thanks all :) New member of Sun Java Forum, Alexander Stepanov.
Hi :)
I have class with different methods, each of this methods make large operation in database (Hibernate3 + MySQL).
I consider situation when my application may crush, and in proccess of recovering I recover objects-parameters for my different methods.
I want to use simple Java serialization object (ObjectInputStream and ObjectOutputStream) and save this bytes in column of row in MySQL, but
in future I'm afraid that fields of parameter-objects of my methods changed (will be add new fields, deleted fields), and I can't deserialize my parameter-objects from MySQL. I know one decision - serialization objects in XML and save XML in DB, but may be somebody offers other variants of saving my object-parameters more quickly than XML.
Thanks all :) New member of Sun Java Forum, Alexander Stepanov.
Similar Messages
-
Calculation Field to be mapped to different data object's column name in Oracle BAM 12c
Hi,
I am having a challenge to enable drill down to 2nd level report by passing calculation field as parameter.
As an alternative, I am thinking to point calculation field to another data object’s column name and generate report so that I would be able to pass that as parameter to drilling report view.
Is there any way to map calculation field to different Data object’s column name? Thanks in advance.
Regards
Amik Basu1. Yes, you can.
SQL> create table ÜÝÞ( ßàá number(10));
Table created.
SQL> insert into ÜÝÞ values (10);
1 row created.1.1 and 1.2 and 2. You can choose UTF as your default character set. It allows the user of non-English characters in VARCHAR columns in your whole database. It is not per tablespace.
SQL> create table ÜÝÞ( ßàá varchar2(100));
Table created.
SQL> insert into ÜÝÞ values ('âãäçìé');
1 row created. -
Convert columns to row equivalent to stragg function in oracle sql
Hi,
Sorry i forgot my Oracle version :
SQL> select * from v$version;
BANNER
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 64-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - ProductionI searched in google but i didn't found the solution.
I looking for a function in discoverer equivalent to stragg sql function.
Note : stragg function convert columns to rows.
Thanks
SELECT deptno, stragg ('-' || ename)
FROM emp_test
GROUP BY deptno;
DEPTNO STRAGG_STR
10 -CLARK-KING-MILLER
20 -SMITH-FORD-ADAMS-SCOTT-JONES
30 -ALLEN-BLAKE-MARTIN-TURNER-JAMES-WARD
3 rows selected.Edited by: Salim Chelabi on 2010-01-29 08:32Hi again,
*1- I created my function in my schema.*
CREATE OR REPLACE TYPE t_string_agg AS OBJECT
g_string VARCHAR2(32767),
STATIC FUNCTION ODCIAggregateInitialize(sctx IN OUT t_string_agg)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateIterate(self IN OUT t_string_agg,
value IN VARCHAR2 )
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateTerminate(self IN t_string_agg,
returnValue OUT VARCHAR2,
flags IN NUMBER)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateMerge(self IN OUT t_string_agg,
ctx2 IN t_string_agg)
RETURN NUMBER
SHOW ERRORS
CREATE OR REPLACE TYPE BODY t_string_agg IS
STATIC FUNCTION ODCIAggregateInitialize(sctx IN OUT t_string_agg)
RETURN NUMBER IS
BEGIN
sctx := t_string_agg(NULL);
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateIterate(self IN OUT t_string_agg,
value IN VARCHAR2 )
RETURN NUMBER IS
BEGIN
SELF.g_string := self.g_string || ',' || value;
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateTerminate(self IN t_string_agg,
returnValue OUT VARCHAR2,
flags IN NUMBER)
RETURN NUMBER IS
BEGIN
returnValue := RTRIM(LTRIM(SELF.g_string, ','), ',');
RETURN ODCIConst.Success;
END;
MEMBER FUNCTION ODCIAggregateMerge(self IN OUT t_string_agg,
ctx2 IN t_string_agg)
RETURN NUMBER IS
BEGIN
SELF.g_string := SELF.g_string || ',' || ctx2.g_string;
RETURN ODCIConst.Success;
END;
END;
SHOW ERRORS
CREATE OR REPLACE FUNCTION string_agg (p_input VARCHAR2)
RETURN VARCHAR2
PARALLEL_ENABLE AGGREGATE USING t_string_agg;
SHOW ERRORS
*2- I ran my query in my schema with sqlplus.*
SELECT deptno,ename,sal, string_agg(ename)over(partition by deptno) AS employees
FROM emp_test
order by deptno;
DEPTNO ENAME SAL EMPLOYEES
10 CLARK 2450 CLARK,KING,MILLER
10 KING 5000 CLARK,KING,MILLER
10 MILLER 1300 CLARK,KING,MILLER
20 JONES 2975 JONES,FORD,ADAMS,SMITH,SCOTT
20 FORD 3000 JONES,FORD,ADAMS,SMITH,SCOTT
20 ADAMS 1100 JONES,FORD,ADAMS,SMITH,SCOTT
20 SMITH 800 JONES,FORD,ADAMS,SMITH,SCOTT
20 SCOTT 3000 JONES,FORD,ADAMS,SMITH,SCOTT
30 WARD 1250 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 TURNER 1500 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 ALLEN 1600 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 JAMES 950 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 BLAKE 2850 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
30 MARTIN 1250 WARD,TURNER,ALLEN,JAMES,BLAKE,MARTIN
14 rows selected.
*3- I import this function in discoverer administration*
4- My problem :When i use the function string_agg(ename)over(partition by deptno) in discover deskto i got the error you can't use over in this place.
Any ideas.
Thank in advance.
Regards Salim. -
Inserting non-serializable objects
Is there any way to insert non-serializable objects into a database? (Or to convert them to bytes?)
Is there any way to insert non-serializable objectsinto a database?
A joke right?No, it's not a joke. It would be a pretty bad one if it were.
Yes, there is a way. Create a table that corresponds
to the object where each attribute in the object
corresponds to field in the object. Add a unique key
if one doesn't exist.I wish it were that simple. I don't have access to those attributes...
>
To create an object insert a row into the table. To
load the object use the unique key to query for the
row. To 'delete' the object delete the row from the
table.BTW, the object in question is the java.awt.geom.Area object (http://java.sun.com/j2se/1.3/docs/api/java/awt/geom/Area.html ).
The only way I can think of to insert an object that doesn't map to a SQL type is to convert it to bytes through serialization, and insert it as RAW data.
I've extended Area to add a name and made my class serializable. However, since Area is not serializable, the only data I can retrieve after deserializing is the name I added (from my understanding of serialization, I have to save Area's data myself, but can't since I don't have access to it, so the deserialization process calls the Area() constructor which initializes the object to empty). -
How to fetch last inserted row in MySQL
Hi,
I am trying to get the last inserted row in MySql..but not able to fetch it.
this is what i used
i have one column order_id which is auto_increment
SELECT * FROM tablename WHERE order_id=(SELECT MAX(order_id) FROM tablename)
any help is appreciated .
the usage of lastinsert() method is also not successful
chintanHello
Given you have a date column, you can use it to determine the latest row. However, there is still a chance that two rows were inserted at exactly the same time in which case you will need something in addition to your date column to decide which is the latest...
The first option uses a sub query and the second uses analytics, as does the 3rd - however with the 3rd, if 2 rows have exactly the same date and time, it will pick one at random unless you include another column in the order by to determine the latest...
select
FROM
your_table
WHERE
your_date_column = (SELECT MAX(your_date_column) from your_table)
SELECT
FROM
select
a.*,
MAX(your_date_column) OVER() max_date_column
FROM
your_table a
WHERE
your_date_column = max_date_column
SELECT
FROM
select
a.*,
ROW_NUMBER OVER(ORDER BY your_date_column DESC) rn
FROM
your_table a
WHERE
rn = 1HTH
David -
Generate columns and rows with a loop
$query = "SELECT * FROM `Sale` WHERE `Date` >= '2007-01-11' AND `Date` <= '2007-01-14' GROUP BY `Date` ORDER BY Date ASC";
$result = mysql_query($query);
How to generate columns and rows with the above mysql query to get this output:
Name/Day 11 12 13 14
Appple 30 25 26 28
Orange 5 23 12 0
Grape 7 16 0 10
The header I managed to create but not the rows. This is what I did.
<?php
$query = "SELECT * FROM `Sale` WHERE `Date` >= '2007-01-11' AND `Date` <= '2007-01-14' GROUP BY `Date` ORDER BY Date ASC";
$result = mysql_query($query);
//Header
?>
<tr>
<td valign=top>
<table cols=6 width=100% border="1" cellspacing=1 cellpadding=1>
<th BGCOLOR=#6C83B0 height="25" width="1"><font color=#FFFFFF size='1'><b></th>
<th BGCOLOR=#6C83B0 width="120" align="left"><font color=#FFFFFF size='2'><b>Name/Day</b></th>
<?
$result = mysql_query($query);
if ($daterow = mysql_fetch_array($result)) {
do {
$TimeStamp = strtotime("$daterow[Date]");
$day = date("j", $TimeStamp);
?>
<th BGCOLOR=#6C83B0 width="5" align="center"><font color=#FFFFFF size='2'><b><?echo $day?></b></th
<?
}while ($daterow = mysql_fetch_array($result));
?>
<th BGCOLOR=#6C83B0 width="5" align="center"><font color=#FFFFFF size='2'><b>Total</b></th>
<th BGCOLOR=#6C83B0><font color=#FFFFFF size='2'><b></b></th>
<th BGCOLOR=#6C83B0 width="1"><font color=#FFFFFF size='1'><b></b></th>
</tr>
<?
//Rows
$result = mysql_query($query);
if ($row = mysql_fetch_array($result)) {
do {
include("../lib/browser_sales_daily.php");
} while ($row = mysql_fetch_array($result));
?>
</tbody></table>
<?php
//browser_sales_daily.php
print <<<EOD
<td BGCOLOR=#EDEDED align="left">
<font size="2">$row[Name]</font>
</td>
EOD;
// <<<< HOW TO GENERATE ROWS HERE WITH A LOOP????? >>>
print <<<EOD
</tr>
EOD;
?>Make sure the photos are "within" celsl and they should sort along with the rest of your data. One way to do this: select a photo that you have in the sheet that is not sorting with the data, command-x to cut, click once in a cell, and paste. Then adjust the row height and width to make the images larger.
SG -
Splitter container columns and rows
is it possible to have two columns and two rows. the issue is that i want to have in the first column only one row and in the second column two rows. is that possible?
Yes, it is possible.
1. Create 2 columns splitter container
2. In the 2nd Column, again create a 2 Row splitter container.
DATA: w_container TYPE REF TO cl_gui_custom_container,
w_splitter TYPE REF TO cl_gui_splitter_container,
w_child1 TYPE REF TO cl_gui_container,
w_child2 TYPE REF TO cl_gui_container,
w_splitter2 TYPE REF TO cl_gui_splitter_container,
w_child21 TYPE REF TO cl_gui_container,
w_child22 TYPE REF TO cl_gui_container.
** create a container for the control
CREATE OBJECT w_container
EXPORTING
container_name = 'CC_ALV'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.
IF sy-subrc <> 0.
MESSAGE a000(tree_control_msg).
ENDIF.
** Instance of Splitter control - 2 columns
CREATE OBJECT w_splitter
EXPORTING parent = w_container
rows = 1
columns = 2.
** Assign first column to continer
CALL METHOD w_splitter->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = w_child1.
** Assign 2nd child to holding container
CALL METHOD w_splitter->get_container
EXPORTING
row = 1
column = 2
RECEIVING
container = w_child2.
** Instance of Splitter control - 2 rows
CREATE OBJECT w_splitter2
EXPORTING parent = w_child2
rows = 2
columns = 1.
** Assign first row of 2nd column to continer
CALL METHOD w_splitter2->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = w_child21.
** Assign 2nd row 2nd column to continer
CALL METHOD w_splitter2->get_container
EXPORTING
row = 2
column = 1
RECEIVING
container = w_child22.
Regards,
Naimesh Patel -
Is it possible to get column and rows in the output
i reading a file and writing toa nother file.i want output as column and rows as given in the following format is it possible in java
Ticket| System | order
456 | machine |678
457 | machine1 |690
correspondoing ticket no comes only in corresponding header ticket no..please explain with code..the out put file may be.txt extension
Message was edited by:
lovemeHi,
have a look at the Formatter class:
http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html
There are also convenience methods e.g. in String:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#format(java.lang.String,%20java.lang.Object...)
or - if you use System.out for example -
http://java.sun.com/j2se/1.5.0/docs/api/java/io/PrintStream.html#printf(java.lang.String,%20java.lang.Object...)
-Puce -
Interactive Report - Icon View - Dynamic Columns per Rows ?
Hi all,
We use the icon view functionnality in Interactive Report.
Is there a way to display the 'columns per row' attribute as an application item and set it dynamical via PL/SQL ?
Any suggestions?
Thanks in advance for advices,
Regards,
GrégoryHi,
Apex 4.0 interactive reports and images (Scott's thread)
Have some useful information and pointers to the solution you are looking for.
I hope this help.
Thank you,
Ranish -
SWAP COLUMNS AND ROW IN AN INTERNAL TABLE to display in ALV
Hi ,
I want to swap all the rows in an internal table with the column of the internal table to display it horizontally in ALV grid.
e.g
1 2 3 (field names)
A P X
B Q Y
C R Z
should look like :
D A B C
E P Q R
F X Y Z
Where D , E, F in first column is already apended in new table.
Or else is there a way to rotate the ALV grid so that it can display rows as columns & columns as rows.
regardshi,
i have an internal table which is like
f1 f2 f3 f4 (column header)
A 1 2 3
B 4 5 6
C 7 8 9
the values in o/p table should be
A B C ( column header)
1 4 7
2 5 8
3 6 9
Please help!! -
How to enter a data into the specified column and row in a created table
Hi,
I want to enter some data to specified column and row in a already created table. Please let me know how to do this.
Regards
Shivakumar SinghA table is just a 2D array of strings. Keep it in a shift register and use "replace array element" to modify the desired entry programmatically.
If you want to modify it manually and directly from the front panel, make it into a control and type directly into the desired element. (In this case your program would need to write to it using a local variable).
Atttached is a simple example in LabVIEW 7.0 that shows both possibilities.
LabVIEW Champion . Do more with less code and in less time .
Attachments:
ChangeTableEntries.vi 41 KB -
Problem in displaying the data of columns into rows in sap script
hi,
i am working on a sap script and i have to display the dat which is displayed in column into rows but it is not displaying it properly.
eg, C
12.1
Si
5.5
it is displaying the data right now like this but i want to display the data like this:-
eg, C Si
12.1 5.5
plzzprovide me guidelines how to solve this problem.hi,
i am using this code to display the data:-
plzz provide me guidelines where i am getting wrong?
TOPparCOMPONENT DESP,,,,,, INS. LOT #, , , , , , MIC,,,,,,,,,, MIC VALUEparENDTOPparFINAL
PROTECT
IF &I_FINAL-PRUEFLOS& NE '000000000000'
&I_FINAL-MAKTX(23)&&i_final-prueflos(12Z)&
&I_FINAL-kurztext(25)&
&I_FINAL-original_input(8)&
ELSE
&I_FINAL-MAKTX(23)&
&I_FINAL-kurztext(25)&
&I_FINAL-original_input(8)&
ENDIF
ENDPROTECT
ITEMHEAD
POSITION WINDOW
SIZE WIDTH +0 . 4 CH HEIGHT +1 LN
BOX FRAME 10 TW
BOX HEIGHT '1.35' LN INTENSITY 20
IF &PAGE& = '1'
BOX XPOS '0' CH YPOS '0' CM WIDTH '0' CM HEIGHT '43' LN FRAME '10' TW
For horizontal line at top
BOX XPOS '0' CH YPOS '0' CM WIDTH '75' CH HEIGHT '0' LN FRAME '10' TW
COLUMN LINES...
END OF COLUMN LINES...
BOX XPOS '0' CH YPOS '43' LN WIDTH '75' CH HEIGHT '0' LN FRAME '10'TW
BOX XPOS '75' CH YPOS '0' LN WIDTH '0' CH HEIGHT '43' LN FRAME '10'TW
ELSE
COLUMN LINES...
END OF COLUMN LINES...
BOX XPOS '0' CH YPOS '0' CM WIDTH '0' CM HEIGHT '47' LN FRAME '10' TW
BOX XPOS '0' CH YPOS '0' CM WIDTH '75' CH HEIGHT '0' LN FRAME '10' TW
BOX XPOS '0' CH YPOS '0' CM WIDTH '45' CM HEIGHT '0' LN FRAME '10' TW
BOX XPOS '20' CH YPOS '0' CM WIDTH '0' CM HEIGHT '47' LN FRAME '10' TW
BOX XPOS '0' CH YPOS '47' LN WIDTH '75' CH HEIGHT '0' LN FRAME '10'TW
BOX XPOS '75' CH YPOS '0' LN WIDTH '0' CH HEIGHT '47' LN FRAME '10'TW
ENDIF
LINEFEED
NEWPAGE
NEW-PAGE
provide me guidelines to solve this problem.
Edited by: ricx .s on Mar 13, 2009 5:58 AM -
Filling in values based on the column and row headers
I have a question that seems simple, but I can't figure out how to do it and I've searched all over the forum to no avail.
I have one column that is width increasing by 3 in. increments (column A)
I have one row that is height increasing by 3 in. increments (row B)
I have one cell that is price (cell A1)
I have a formula to calculate price per sq. ft.: =CEILING(A3B2/144,1)A1. This gives me the whole sq. ft. number multiplied by the price per sq. ft. to give me a total price at that dimension (A3 is the width, B2 is the height, and A1 is the cell that contains the price per sq. ft.).
*Here is the problem*: When I try to cut and paste or fill the formula to the other cells, it doesn't calculate the formula as =CEILING(column A * Row B/144,1)*A1. Instead, it moves all of the values relative to the new cell that the formula is being pasted or filled to.
Is there a way to autofill the cells so that the formula continues to refer to the width column, the height row, and the price cell?Aha! Apparently I didn't do enough research before I posted and I have since answered my own question. Here's how you do it. Look for "Distinguishing Absolute and Relative Cell References" and you should be able to find what you need. In my case, here is the formula I needed to have to make the copy and paste function do what I needed it to do: =CEILING($A3*B$2/144,1)*$A$. Hope that helps anyone who may have had the same problem I did.
-
Returning a serializable object from a java stored procedure
[Server : Oracle 8.1.6 on WinNT4 server. Client : java 1.2.2 on WinNT4 workstation.]
I am attempting to use a java stored procedure to build a complex serializable java object on the database (to minimise number of requests/queries on the network) and then return this object in response to the original query.
I have it writing a BLOB by means of
OutputStream os = retval.getBinaryOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(v);
return retval;
where retval is a blob selected from a dummy table (created for this purpose) and v is a vector containing only serializable objects.
However, on the client side when I attempt to recover the object by
OracleResultSet rs = (OracleResultSet)stmt.executeQuery("SELECT javatest FROM DUAL");
oracle.sql.BLOB blob=rs.getBLOB(1);
InputStream inp = blob.getBinaryStream();
ObjectInputStream oinp = new ObjectInputStream(inp);
Vector retval = (Vector)oinp.readObject();
I get an exception telling me that the input stream does not contain an object at the line containing new ObjectInputStream(inp);
The full exception is :
java.io.StreamCorruptedException: InputStream does not contain a serialized object
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:731)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:165)
at eRespond.DBLayer.JavaStoredProcedures.testdbobj.test2(testdbobj.java:143)
at eRespond.DBLayer.JavaStoredProcedures.testdbobj.main(testdbobj.java, Compiled Code)
I've checked that the returned blob is non-null, and that oracle.sql.BLOB is used throughout.
Any thoughts?
Thanks,
mark.Firstly I guess to be able to new B() as a Thread, B
should extends Thread.
Secondly the constructor should not have any return
type:
public B(String cmd)
instead of
public void B(String cmd)
Lastly there is no need to override the start() method
if all it does is to call the superclass. The subclass
automatically inherits the method.
Hope this helps.thanks for replying so soon...
yes, you are right, it should extends Thread and it is, i forgot to out in this example... my mistake!
i'll try the construnctor thing to see if it works. bare in mind that i working with java stored procedures, it should work even so, right?
thanks -
How to get the current selected column and row
Hi,
A difficult one, how do i know which column (and row would also be nice) of a JTable is selected?
e.g.
I have a JButton which is called "Edit" when i select a cell in the JTable and click the button "Edit" a new window must be visible as a form where the user can edit the a part of a row.
Then the column which was selected in the JTable must be given (so i need to know current column) and then i want the TextField (the one needed to be edited) be active with requestFocus(). So it would be
pricetextfield.requestFocus();
Problem now is that i have to click every time in the window the JTextField which was selected in the JTable. I have chosen for this way of editing because my application is multi-user and it would be too difficult for me when everybody did editing directly (catch signals, reload data, etc.).
My question is how do I know the current column and the current row in a JTable?I'm not sure what your mean by the "current" row or column, but the following utility methods return
which row and column have focus within the JTable.
public static int getFocusRow(JTable table) {
return table.getSelectionModel().getLeadSelectionIndex();
public static int getFocusColumn(JTable table) {
return table.getColumnModel().getSelectionModel().getLeadSelectionIndex();
}
Maybe you are looking for
-
Create Full HD Backup to encrypted bootable external drive
I have used SuperDuper to copy my internal HD to a bootable external drive configured with a 300 GB partition. Now I want to go one step further by creating that same backup but this time I want my external data to be encrypted for added security. I
-
What file type to export vid from final cut to studio pro
Beginner here, the question I have is what is the best file format to export from final cut to studio pro so that I will play in a decent to good quality on a DVD that I make in studio pro. Thanks.
-
Why itunes can't detect my iphone 3GS?
Why can't my itunes detect my iphone 3GS device on my laptop, but when I charge my brothers iphone on my laptop itunes can detect their iphones devices but not mine??? Any ideas on how to fix this??
-
Saving to jpeg/ progress scans
I've never noticed this before -- at botton progress scans 3,4,5. seems to default to 3. what is it? thanks.
-
I've recently added the MacAir to my Microsoft /Windows network. The Mac sees my printers but all the printers are "paused" and I cannot print, even if directly attached. How do I fix this?