c# web api pdf : How to create bookmark in pdf with SDK control service wpf web page .net dnn BerkeleyDB-JE-GSG7-part704

Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 62
String sku = sArray[1];
Inventory theInventory = new Inventory();
theInventory.setItemName(sArray[0]);
theInventory.setSku(sArray[1]);
theInventory.setVendorPrice(
(new Float(sArray[2])).floatValue());
theInventory.setVendorInventory(
(new Integer(sArray[3])).intValue());
theInventory.setCategory(sArray[4]);
theInventory.setVendor(sArray[5]);
// Put it in the store. Note that this causes our secondary key
// to be automatically updated for us.
da.inventoryBySku.put(theInventory);
}
The remainder of this example simple parses the command line and loads data from a flat-
text file. There is nothing here that is of specific interest to the DPL, but we show this part of
the example anyway in the interest of completeness.
private static void parseArgs(String args[]) {
for(int i = 0; i < args.length; ++i) {
if (args[i].startsWith("-")) {
switch(args[i].charAt(1)) {
case 'h':
myDbEnvPath = new File(args[++i]);
break;
case 'i':
inventoryFile = new File(args[++i]);
break;
case 'v':
vendorsFile = new File(args[++i]);
break;
default:
usage();
}
}
}
}
private List loadFile(File theFile, int numFields) {
List<String[]> records = new ArrayList<String[]>();
try {
String theLine = null;
FileInputStream fis = new FileInputStream(theFile);
BufferedReader br = 
new BufferedReader(new InputStreamReader(fis));
while((theLine=br.readLine()) != null) {
How to create bookmark in pdf with - add, remove, update PDF bookmarks in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Your C# Project with Rapid PDF Internal Navigation Via Bookmark and Outline
bookmarks pdf; adding bookmarks to a pdf
How to create bookmark in pdf with - VB.NET PDF bookmark library: add, remove, update PDF bookmarks in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Your VB.NET Project with Rapid PDF Internal Navigation Via Bookmark and Outline
add bookmarks pdf; create bookmark in pdf automatically
Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 63
String[] theLineArray = theLine.split("#");
if (theLineArray.length != numFields) {
System.out.println("Malformed line found in " + 
theFile.getPath());
System.out.println("Line was: '" + theLine);
System.out.println("length found was: " + 
theLineArray.length);
System.exit(-1);
}
records.add(theLineArray);
}
// Close the input stream handle
fis.close();
} catch (FileNotFoundException e) {
System.err.println(theFile.getPath() + " does not exist.");
e.printStackTrace();
usage();
} catch (IOException e)  {
System.err.println("IO Exception: " + e.toString());
e.printStackTrace();
System.exit(-1);
}
return records;
}
protected ExampleDatabasePut() {}
ExampleInventoryRead.java
ExampleInventoryRead retrieves inventory information from our entity store and displays it.
When it displays each inventory item, it also displays the related vendor contact information.
ExampleInventoryRead can do one of two things. If you provide no search criteria, it displays
all of the inventory items in the store. If you provide an item name (using the -s command
line switch), then just those inventory items using that name are displayed.
The beginning of our example is almost identical to our ExampleDatabasePut example
program. We repeat that example code here for the sake of completeness. For a complete
walk-through of it, see the previous section (ExampleDatabasePut.java (page 59)).
package persist.gettingStarted;
import java.io.File;
import java.io.IOException;
import com.sleepycat.je.DatabaseException;
import com.sleepycat.persist.EntityCursor;
public class ExampleInventoryRead {
VB.NET Create PDF from Excel Library to convert xlsx, xls to PDF
C#, C#.NET PDF Reading, C#.NET Annotate PDF in WPF, C#.NET PDF Create, C#.NET NET rotate PDF pages, C#.NET search text in PDF, C#.NET edit PDF bookmark, C#.NET
excel print to pdf with bookmarks; add bookmarks to pdf reader
VB.NET Create PDF from Word Library to convert docx, doc to PDF in
Easy to create searchable and scanned PDF files from Word. Ability to get word count of PDF pages. Change Word hyperlink to PDF hyperlink and bookmark.
bookmarks in pdf from word; bookmark pdf documents
Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 64
private static File myDbEnvPath =
new File("/tmp/JEDB");
private DataAccessor da;
// Encapsulates the database environment.
private static MyDbEnv myDbEnv = new MyDbEnv();
// The item to locate if the -s switch is used
private static String locateItem;
private static void usage() {
System.out.println("ExampleInventoryRead [-h <env directory>]" +
"[-s <item to locate>]");
System.exit(-1);
}
public static void main(String args[]) {
ExampleInventoryRead eir = new ExampleInventoryRead();
try {
eir.run(args);
} catch (DatabaseException dbe) {
System.err.println("ExampleInventoryRead: " + dbe.toString());
dbe.printStackTrace();
} finally {
myDbEnv.close();
}
System.out.println("All done.");
}
private void run(String args[])
throws DatabaseException {
// Parse the arguments list
parseArgs(args);
myDbEnv.setup(myDbEnvPath, // path to the environment home
true);       // is this environment read-only?
// Open the data accessor. This is used to retrieve
// persistent objects.
da = new DataAccessor(myDbEnv.getEntityStore());
// If a item to locate is provided on the command line,
// show just the inventory items using the provided name.
// Otherwise, show everything in the inventory.
if (locateItem != null) {
showItem();
} else {
C# Create PDF from Word Library to convert docx, doc to PDF in C#.
Easy to create searchable and scanned PDF files from Word. Able to get word count in PDF pages. Change Word hyperlink to PDF hyperlink and bookmark.
bookmark page in pdf; how to add a bookmark in pdf
VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.
Qualified Tiff files are exported with high resolution in VB.NET. Create multipage Tiff image files from PDF in VB.NET project. Support
create pdf with bookmarks from word; create bookmarks pdf file
Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 65
showAllInventory();
}
The first method that we provide is used to show inventory items related to a given inventory
name. This method is called only if an inventory name is passed to ExampleInventoryRead
via the -s option. Given the sample data that we provide with this example, each matching
inventory name will result in the display of three inventory objects.
To display these objects we use the Inventory class' inventoryByName secondary index to
retrieve an EntityCursor, and then we iterate over the resulting objects using the cursor.
Notice that this method calls displayInventoryRecord() to display each individual object.
We show this method a little later in the example.
// Shows all the inventory items that exist for a given
// inventory name.
private void showItem() throws DatabaseException {
// Use the inventory name secondary key to retrieve
// these objects.
EntityCursor<Inventory> items =
da.inventoryByName.subIndex(locateItem).entities();
try {
for (Inventory item : items) {
displayInventoryRecord(item);
}
} finally {
items.close();
}
Next we implement showAllInventory(), which shows all of the Inventory objects in the
store. To do this, we obtain an EntityCursor from the Inventory class' primary index and,
again, we iterate using that cursor.
// Displays all the inventory items in the store
private void showAllInventory()
throws DatabaseException {
// Get a cursor that will walk every
// inventory object in the store.
EntityCursor<Inventory> items =
da.inventoryBySku.entities();
try {
for (Inventory item : items) {
displayInventoryRecord(item);
}
} finally {
items.close();
C# Create PDF from Tiff Library to convert tif images to PDF in C#
Create PDF from Tiff. |. Home ›› XDoc.PDF ›› C# PDF: Create PDF from Tiff. Create PDF from Tiff in both .NET WinForms and ASP.NET application.
bookmarks in pdf reader; how to bookmark a page in pdf document
C# Create PDF from Excel Library to convert xlsx, xls to PDF in C#
C#.NET PDF SDK- Create PDF from Word in Visual C#. Online C#.NET Tutorial for Create PDF from Microsoft Office Excel Spreadsheet Using .NET XDoc.PDF Library.
creating bookmarks pdf; how to add bookmarks to a pdf
Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 66
}
Now we implement displayInventoryRecord(). This uses the getter methods on the
Inventory class to obtain the information that we want to display. The only thing interesting
about this method is that we obtain Vendor objects within. The vendor objects are retrieved
Vendor objects using their primary index. We get the key for the retrieval from the
Inventory object that we are displaying at the time.
private void displayInventoryRecord(Inventory theInventory)
throws DatabaseException {
System.out.println(theInventory.getSku() + ":");
System.out.println("\t " + theInventory.getItemName());
System.out.println("\t " + theInventory.getCategory());
System.out.println("\t " + theInventory.getVendor());
System.out.println("\t\tNumber in stock: " +
theInventory.getVendorInventory());
System.out.println("\t\tPrice per unit:  " +
theInventory.getVendorPrice());
System.out.println("\t\tContact: ");
Vendor theVendor =
da.vendorByName.get(theInventory.getVendor());
assert theVendor != null;
System.out.println("\t\t " + theVendor.getAddress());
System.out.println("\t\t " + theVendor.getCity() + ", " +
theVendor.getState() + " " + theVendor.getZipcode());
System.out.println("\t\t Business Phone: " +
theVendor.getBusinessPhoneNumber());
System.out.println("\t\t Sales Rep: " +
theVendor.getRepName());
System.out.println("\t\t            " +
theVendor.getRepPhoneNumber());
The last remaining parts of the example are used to parse the command line. This is not very
interesting for our purposes here, but we show it anyway for the sake of completeness.
protected ExampleInventoryRead() {}
private static void parseArgs(String args[]) {
for(int i = 0; i < args.length; ++i) {
if (args[i].startsWith("-")) {
switch(args[i].charAt(1)) {
case 'h':
myDbEnvPath = new File(args[++i]);
break;
case 's':
locateItem = args[++i];
C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF
C#.NET PDF SDK- Create PDF from PowerPoint in C#. How to Use C#.NET PDF Control to Create PDF from Microsoft PowerPoint Presentation in .NET Project.
bookmark pdf reader; add bookmarks to pdf
VB.NET PDF - Create PDF Online with VB.NET HTML5 PDF Viewer
C#, C#.NET PDF Reading, C#.NET Annotate PDF in WPF, C#.NET PDF Create, C#.NET NET rotate PDF pages, C#.NET search text in PDF, C#.NET edit PDF bookmark, C#.NET
create bookmarks in pdf; pdf bookmark
Library Version 12.1.6.0
A DPL Example
12/7/2015
Getting Started with JE
Page 67
break;
default:
usage();
}
}
}
}
Part II. Programming
with the Base API
This section discusses application that are built using the JE base API. Note that most JE applications can
probably be written using the DPL (see Programming with the Direct Persistence Layer (page 27) for more
information). However, if you are porting an application from the Berkeley DB API, then the base API is
right for you.
12/7/2015
Getting Started with JE
Page 69
Chapter 7. Databases
In Berkeley DB Java Edition, a database is a collection of records. Records, in turn, consist of
key/data pairings.
Conceptually, you can think of a Database as containing a two-column table where column
1 contains a key and column 2 contains data. Both the key and the data are managed
using DatabaseEntry class instances (see Database Records (page 81) for details on this
class ). So, fundamentally, using a JE Database involves putting, getting, and deleting
database records, which in turns involves efficiently managing information encapsulated
by DatabaseEntry objects. The next several chapters of this book are dedicated to those
activities.
Note that on disk, databases are stored in sequentially numerically named log files in the
directory where the opening environment is located. JE log files are described Databases and
Log Files (page 151).
Also, note that in the previous section of this book, Programming with the Direct Persistence
Layer (page 27), we described the DPL The DPL handles all database management for you,
including creating all primary and secondary databases as is required by your application.
That said, if you are using the DPL you can access the underlying database for a given index if
necessary. See the Javadoc for the DPL for more information.
Opening Databases
You open a database by using the Environment.openDatabase() method (environments are
described in Database Environments (page 16)). This method creates and returns a Database
object handle. You must provide Environment.openDatabase() with a database name.
You can optionally provide Environment.openDatabase() with a DatabaseConfig() object.
DatabaseConfig() allows you to set properties for the database, such as whether it can be
created if it does not currently exist, whether you are opening it read-only, and whether the
database is to support transactions.
Note that by default, JE does not create databases if they do not already exist. To override
this behavior, set the creation property to true.
Finally, if you configured your environment and database to support transactions, you can
optionally provide a transaction object to the Environment.openDatabase(). Transactions
are described in the Berkeley DB, Java Edition Getting Started with Transaction Processing
guide.
The following code fragment illustrates a database open:
Library Version 12.1.6.0
Databases
12/7/2015
Getting Started with JE
Page 70
package je.gettingStarted;
import com.sleepycat.je.Database;
import com.sleepycat.je.DatabaseConfig;
import com.sleepycat.je.DatabaseException;
import com.sleepycat.je.Environment;
import com.sleepycat.je.EnvironmentConfig;
import java.io.File;
...
Environment myDbEnvironment = null;
Database myDatabase = null;
...
try {
// Open the environment. Create it if it does not already exist.
EnvironmentConfig envConfig = new EnvironmentConfig();
envConfig.setAllowCreate(true);
myDbEnvironment = new Environment(new File("/export/dbEnv"), 
envConfig);
// Open the database. Create it if it does not already exist.
DatabaseConfig dbConfig = new DatabaseConfig();
dbConfig.setAllowCreate(true);
myDatabase = myDbEnvironment.openDatabase(null, 
"sampleDatabase", 
dbConfig); 
} catch (DatabaseException dbe) {
// Exception handling goes here
}
Deferred Write Databases
By default, JE database operations that modify the database are written (logged) at the time
of the operation. For transactional databases, changes become durable when the transaction
is committed.
However, deferred write databases operations are not written at the time of the operation.
Writing is deferred for as long as possible. The changes are only guaranteed to be durable
after the Database.sync() method is called or the database is properly closed.
Deferring writes in this manner has two performance advantages when performing database
modifications:
1. When multiple threads are performing writes, Concurrency is increased because the
bottleneck of writing to the log is avoided.
Library Version 12.1.6.0
Databases
12/7/2015
Getting Started with JE
Page 71
2. Less total writing takes place. If a single record is modified more than once, or modified
and deleted, then only the final result must be written. If a record is inserted and
deleted before a database sync or close occurs, nothing at all is written to disk. The same
advantage holds for writing internal index information.
Deferred write databases are useful for applications that perform a great deal of database
modifications, record additions, deletions, and so forth. By delaying the data write, you delay
the disk I/O. Depending on your workload, this can improve your data throughput by quite a
lot.
While the durability of a deferred write database is only guaranteed when Database.sync()
is called or the database is properly closed, writing may also occur at other times. For
example, a JE checkpoint will effectively perform a Database.sync() on all deferred write
databases that are open at the time of the checkpoint. If you are using deferred write to load
a large data set, and you want to reduce writing as much as possible during the load, consider
disabling the JE checkpointer.
Also, if the JE cache overflows as database modifications occur, information discarded from
the cache is written to disk in order to avoid losing the changes. If you wish to reduce this
writing to a minimum, configure your cache to be large enough to hold the entire data set
being modified, or as large as possible.
Note
Despite the examples noted in the previous paragraphs, there is no guarantee that
changes to a deferred write database are durable unless Database.sync() is called
or the database is closed. If you need guaranteed durability for an operation, consider
using transactions instead of deferred write.
You should also be aware that Database.sync() is a relatively expensive operation because
all outstanding changes to the database are written, including internal index information. If
you find that you are calling Database.sync() frequently, consider using transactions.
All other rules of behavior pertain to deferred write databases as they do to normal
databases. Deferred write databases must be named and created just as you would a normal
database. If you want to delete the deferred write database, you must remove it just as you
would a normal database. This is true even if the deferred write database is empty because its
name persists in the environment's namespace until such a time as the database is removed.
Note that determining whether a database is deferred write is a configuration option. It is
therefore possible to switch a database between "normal" mode and deferred write database.
You might want to do this if, for example, you want to load a lot of data to the database.
In this case, loading data to the database while it is in deferred write state is faster than in
"normal" state, because you can avoid a lot of the normal disk I/O overhead during the load
process. Once the load is complete, sync the database, close it, and and then reopen it as a
normal database. You can then continue operations as if the database had been created as a
"normal" database.
To configure a database as deferred write, set DatabaseConfig.setDeferredWrite() to
true and then open the database with that DatabaseConfig option.
Documents you may be interested
Documents you may be interested