Easy to use database for java project [closed] - java

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I am writing a little java application that will handle (potentially) a lot of data on the user's device. The structure of my data is this:
item type 1 contains
integer variable
png/jpeg image
2 string variables
custom datatype containing two strings and a double
list of other items of this type
list of items of type 2 who contain this item
item type 2 contains
string variable
list of items of type 1
I have honestly no idea what I could use to store this data. It should just be easy to add it to the program without requiring too many additional installation steps for the user. What do you think is best?

I would go with H2 Database. Some of the features are:
Very fast, open source, JDBC API
Embedded and server modes; in-memory databases
Browser based Console application
Small footprint: around 2 MB jar file size
Nice documentation and also the creator is active here on Stackoverflow ;-) and can help!
Look here for more: https://www.h2database.com/html/main.html

For starter, you can use SQLite for simple database. But from your story, I think Google Guava suits your needs better.
https://github.com/google/guava/wiki
You may store the data to file before the app exits and load it to memory again when it runs.
Check this one for database-like memory 100% pure Java. http://hsqldb.org/

you could use sqlite as it is a file-based database, it should work great without any installation (just add a library to your project to handle it). https://www.sqlitetutorial.net/sqlite-java/
You should store the images in a folder though

Related

Need suggestion on temporary data storage of CSV data for validation purposes [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
We have a requirement wherein user can upload bulk amount of data through CSV file, this may contain 20-30k records. Now we need to validate each record before inserting it into oracle DB. We also have a mongoDB used for some other business logics.
The approach we are going with is - save the records in mongodb(temporary), validate the records, dump all valid records into oracle. We are using spring-batch for CSV uploads.
is this a recommended approach or is there any alternative approach you use ? Also can we use oracle temporary tables for CSV bulk upload.
Why not creating an external table? It is just a "pointer" to the CSV file so you don't actually load anything into the database. Good point is that you can write (PL/)SQL against it, perform validation and insert only valid data into the target table. That saves you from loading data twice (Mongo first, Oracle next) as you do everything within Oracle.
We have also used spring-batch for this kind of use case something similar to mentioned in this link;
https://dzone.com/articles/spring-batch-csv-processing
However, I don't see a point in using an additional MongoDB just to temporarily store the records.
If you really need to have an intermediary layer, then I would suggest you to use some kind of cache like REDIS.
Maintenance of REDIS is much simple and easier compared to MongoDB

Neo4j or SQLite to hold a folder structure? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I need to make an app in Java that must add in a database all the files (with folder structure) from a hard drive.
I need to add the metadata of this files as well.
What it will be the best aproach ? Using SQLite with multiple tables or Neo4j ??
A file system is represented as a tree. A tree is in fact an undirected graph.
While this question may be flagged as opinions based, I would love to add some points valuable to Neo4j.
Your file structure will be represented naturally in a graph, which means you will not have (or mostly not) differences between your domain and what is persisted in your database.
Secondly, Neo4j is really performant in matter of ACL, which is part of your metadata. http://maxdemarzi.com/2013/03/18/permission-resolution-with-neo4j-part-1/
So all your points are in fact a "graph" and thus Neo4j is the most valuable choice for fulfilling your requirements.
I think it depends on what kind of operations will you do on such data.:
But generally speaking Neo4j is very useful if you would need to traverse the directories and search for the files. Neo4j allows you to create a very easy query and iterate over the results in a friendly Java API.

Check and avoid explicit content on blog android app [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I am developing a Blog kinda app where a user can upload images, videos, text, etc.
My problem is that I wanted to stop the users from uploading any explicit content. I need to check whether the image or text contained with any explicit or bad content. Till now I am not able to check if the text contains any explicit contents. In this, I compare the textual words with my database word dictionary. But I feel it is not a perfect solution as the number of words are too many. I wanted to know if this kind of checking is feasible and if it is not possible to do so, then any suggestions that I should follow and most importantly in the case of images. I am ready to use any API if it exist for such problems.
If there are any specific libraries in other platforms can also be helpful for reference purpose.
If you would like to remove spam it is a nice to consider Akismet. (Wordpress installations come with default integration.) There is an another widely used one called SpamWipe.
If you would like to check Plagiarism, there are other tools like the one that small seo tools is providing. You can take a look at copyleaks.com too.
There is a good list for API-s to use in your case:
http://blog.mashape.com/list-of-18-apis-to-protect-your-site/
Of course you could use this kind of API-s in your application.

Open-source Java library to mimic Excel's "Text Import Wizard"? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Microsoft Excel has a nice "Text Import Wizard" to help load files that are not .xls or .csv files. The user specifies the delimiter used (or the fixed width), as well as some information about column types (general, dates, etc.). Are there any open-source Java libraries that can mimic a similar sort of functionality and allow one to put the results into home-brewed data structures?
To clarify, suppose I have a data structure to represent essentially a 2D spreadsheet. I would like to populate that data structure from a file that might be tab-delimited, comma-delimited, etc (these files might be huge BTW). I know there exist a bunch of CSV readers, but are there any that also support the type of extra markup related to column types and other types of customized pre-processing?
I'm not an open-source expert, but I would it to be under a license that wouldn't force me to release my source code. Thanks.
Yep. OpenCSV lets you choose the delimiter, in affect making it able to read all kinds of files
It appears the answer is "No," there is not a library that has all I wanted. Will's solution did not include the type of pre-processing that I was hoping for.

GUI for Berkeley DB [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm using Berkeley DB Java edition, via the DPL interface.
I want to ask if someone knows about any GUI library that could make it easy to browse the data saved in the database.
I know that BDB documentation says that the metadata about the stored entities is not saved in any place and therefore only the person who have written the data can know what are the types of the classes that would be returned from there. That's why I'm searching for a library (not a complete program) that would be included to the main project and so it would know the types of my classes and would be able to show the data correctly.
p.s. I've found this bdb-browser but it seems like a dead project.
Update:
So far I've found a GUI that shows the statistics gathered for the BDB via the JMX. Here is how to use it: http://www.oracle.com/technology/documentation/berkeley-db/je/jconsole/JConsole-plugin.html
Still searching for data browser...
You could try DbVisualizer.
DbVisualizer doesn't directly support the Berkeley DB, but does provide JDBC drivers for many databases,
You can use Execute Query to connect Berkeley DB. Its is a free software. You can get the distribution from http://executequery.org
Here is an extremely simple browser. Needs to be compiled though.
https://github.com/ferruccio/bdbvu
I did a quick search and didn't find anything.
I don't think you're going to have a lot of luck looking for a data browser, because the format of the value in each database entry is going to be variable. For example, it might be primitive data, data written out by the default Java serialization, or a custom format for an instance of a class which implements Externalizable.

Categories