WEEK 3 FRIDAY
Year 1 (Year 2)
FIRST READING Hebrews 10:32-39
A reading from the Letter to the Hebrews
Brethren: Recall the
former days when, after you were enlightened, you endured a hard struggle with sufferings,
sometimes being publicly exposed to abuse and affliction, and sometimes being
partners with those so treated. For you had compassion on the prisoners, and
you joyfully accepted the plundering of your property, since you knew that you
yourselves had a better possession and an abiding one.
Therefore do not throw away your confidence, which has a great reward. For you
have need of endurance, so that you may do the will of God and receive what is
promised. "For yet a little while, and the coming one shall come and shall
not tarry; but my righteous one shall live by faith, and if he shrinks back, my
soul has no pleasure in him." But we are not of those who shrink back and
are destroyed, but of those who have faith and keep their souls.
The word of the Lord
RESPONSORIAL PSALM Psalm 37:3-4.5-6.23-24.39-40 (R. 39a)
R. From the Lord comes the salvation of the just.
Trust in the LORD
and do good; then you will dwell in the land and safely pasture. Find your
delight in the LORD, who grants your heart's desire.
R. From the Lord comes the
salvation of the just.
Commit your way to
the LORD; trust in him, and he will act, and make your uprightness shine like
the light, the justice of your cause like the noon-day sun.
R. From the Lord comes the
salvation of the just.
By the LORD are the
steps made firm of one in whose path He delights. Though he stumble
he shall never fall, for the LORD will hold him by the hand.
R. From the Lord comes the
salvation of the just.
But from the LORD
comes the salvation of the just, their stronghold in time of distress. The LORD
helps them and rescues them, rescues and saves them from the wicked: because
they take refuge in him.
R. From the Lord comes the
salvation of the just.
FIRST READING 2 Samuel 11:1-4.5-10.13-17
A reading from the first Book of Samuel
It happened that, in
the spring of the year, the time when kings go forth to battle, David sent Joab, and his servants with him, and all
The word of the Lord
RESPONSORIAL PSALM Psalm 51:3-4.5-6ab.6cd-7.10-11 (R. cf. 3a)
R. Have mercy, O Lord, for we have sinned.
Have mercy on me, O God, according to your merciful
love; according to your great compassion, blot out my transgressions. Wash me
completely from my iniquity, and cleanse me from my sin.
R. Have mercy, O Lord, for we have sinned.
My transgressions, truly I know them; my sin is
always before me.  Have mercy, O Lord, for we have sinned.
 O see, in guilt I was born, a
sinner when my mother conceived me.
R. Have mercy, O Lord, for we have sinned.
Let me hear rejoicing and gladness,
that the bones you have crushed may exult. Turn away your face from my
sins, and blot out all my guilt.
R. Have mercy, O Lord, for we have sinned.
R. Alleluia. Blessed are you, Father, Lord of heaven and earth, that you have revealed to little ones the mysteries of the kingdom. R. Alleluia.
GOSPEL Mark 4:26-34
A reading from the holy Gospel according to Mark
At that time: Jesus said to the crowds, "The
The Gospel of the Lord


Registration
Register Leagues
Register Families
Register Players
Register Tryouts
Register Volunteers
Integration
Quick Books
ADP Payroll
Docu Sign
Analytics
Mobiel Apps
Collaboration
Club Mails
Coaches Corner
Team Chats
Parent/Player
External Links
Security
User Security
User Authentication
Database Security
Data Migration
Server Security
Dashboard
Operational
Financial
Consultant
Performance
Management
Reporting
Parameterized Reports
PDF/Word Export
Enterprise Reports
Emailing Feature
Print
Scheduling
Programs
Tryouts
Tournaments
League Games
League Practices
Calendar
Worksheets
Practice Calendar
Game Calendar
Field Calendar
Coach Calendar
Team Hub
Directory/Calendar
Team Collaboration
Player Evaluations
Practice Scheduling
Uniform Ordering
Player Hub
Commitment Letter
Medical Release
Directory/Calendar
Self Evaluations
Uniform Selections
Alert Management
Registration Notification
Practice Notification
Game Notification
Coach & Team Notification
Field Blackouts
Field Management
Field Registration
Status Inquiry
Usage Calendar
Field Maintenance
Rained-Out Alerts


South Korean K-pop star Goo Hara found dead in Seoul
The body of 28-year-old Korean pop singer Goo Hara has been discovered at her home in Seoul, according to police. The news follows the recent death of her close friend Sulli, another K-pop star and actress.
Korean celebrity entertainer Goo Hara, formerly a member of the girl group Kara, passed away at the age of 28, South Korean police said Sunday.
Her body was discovered in her apartment in southern Seoul, authorities added. The cause of death was still under investigation.
Goo had completed a mini-tour in Japan and released a Japanese-language single, "Midnight Queen," earlier this month. The shows were widely seen as a comeback for the singer after a reported suicide attempt in May.
The K-pop star was hospitalized in May after her manager found her, unconscious, in her home. The day before, the singer had posted the word "Goodbye" on her Instagram account. She had been engaged in a public row with her ex-boyfriend, who has threatened to release a sex video.
String of suicides
The 28-year-old singer also complained of depression and spoke out against cyberbullying. Her close friend, fellow singer and actress Sulli, is believed to have committed suicide in October.
"I hope Jin-ri is now in a place where she can do whatever she wants," Goo wrote on her Instagram page at the time, using Sulli's real name.
Suicide is one of the leading causes of death for young South Koreans. A string of celebrity suicides in recent years sparked a discussion on the pressures and public scrutiny faced by Korean entertainers from a young age.
"It is almost as if these deaths are 'part of the show' and are reported as such," Emanuel Pastreich, director of the Seoul-based Asia Society, told DW's Julian Ryall last month.
If you are suffering from emotional strain or suicidal thoughts, seek professional help. You can find information on where to find help, no matter where you live in the world, at this website: www.befrienders.org .
dj/sms (AP, AFP, Reuters)


Herbs and Spices are an invaluable addition to the kitchen, fresh herbs and aromatic spices give dishes distinctive taste and exotic aromas.
Fresh herbs are best used fresh. Proper storage will help in prolonging their life.
It is recommended to store fresh herbs in plastic bags in the refrigerator for 1 to 2 days. Delicate varieties like cilantro and basil should be first wrapped in slightly damp paper towels before they are placed in the bags.
Generally ground spices will retain their best flavor for 1 year. Whole spices may last for 5 years.
To dry herbs, hang them up by their stalks in a dry, cool place. This will help in concentrating the flavors in the leaves, for about a week. Once they are dried they store them in non reactive air tight containers.
Fresh herbs can be stored by freezing. Place the finely chopped herbs in the ice cube tray and fill it with water and freeze. Drop the straight into curries or sauces straight from the freezer. Large quantities of spices can also be stored in the freezer in tightly sealed containers.
Store the dry spices in non reactive air tight containers. Humidity, light and heat will cause the spices to lose their taste.
Whenever possible, grind whole spices in a coffee grinder just prior to using, for much better flavor.


Keeping windows and doors well insulated can result in major savings in the winter months.
Upkeep of weather striping and caulk sealant and using window covers can help increase savings.
Curtain and blinds stuff, already mentioned.
In the winter, opening a window is a very ineffcient way of cooling a room.
doors can be a major way that outside air comes into the house, making it more difficult to heat/cool the house.
Periodically check your weatherstripping and make sure you door closes without gaps.


abenaki.info abenaki.land abenaki.party abenaki.press abenaki.science abenaki.tech abenaki.us algonquian.land algonquian.press algonquian.space algonquian.tech algonquian.us allnight.services amitabha.faith amitabha.press artifact.computer atom.codes atom.glass atom.guide atom.parts atom.properties attribute.computer automata.club automata.computer automata.host automata.press automata.site automatic.codes automatic.computer avalokitesvara.faith avalokitesvara.press avalokitesvara.pw avalokitesvara.science bach.computer beethoven.computer bernie.science bodhisattva.host bodhisattva.press bodhisattva.space brattleboro.town brooklyn.ai brooklyn.camp buddha.cafe buddha.estate buddha.men candy.computer closure.computer composer.computer crispr.codes democracy.fyi democrat.codes democrat.computer democrat.download democrat.fyi democrat.healthcare democrat.hosting democrat.software democrat.work democratic.technology democtratic.tech dfwalter.design dialogue.computer dummerston.town dynamic.computer dynamo.computer east.estate elizabeth.democrat epistemic.computer epistemic.lgbt estate.ltda feeling.blue firstnation.land function.computer gender.computer guanyin.faith guanyin.press guanyin.science guanyin.stream intellegence.computer intelligence.computer intelligence.pw intelligent.parts intension.agency intension.cloud intension.computer intension.press jordan.bz jordan.pe laf.land lafland.email lafland.party lafland.us lake.camp leahy.democrat liberalism.faith liberalism.flowers liberalism.run liberalism.win mahayaina.press mahayaina.science maitreya.faith maitreya.host maitreya.press maitreya.science maitreya.space marina.party marina.restaurant matter.properties mindful.computer mozart.computer mutation.codes mutation.design mutation.flowers mutation.healthcare mutation.help mutation.host mutation.lgbt mutation.press mutation.pw mutation.space mutation.technology mutation.work nation.care nation.codes nation.computer nation.estate nation.land nation.technology nulhegan.land nulhegan.org number.computer object.computer onenation.land ontology.computer paradox.computer person.computer philosophy.help philosophy.ink philosophy.lgbt poem.city poem.codes poem.computer poem.glass poem.solutions poem.zone poetry.codes poetry.computer poetry.glass poetry.solutions pollen.agency pollen.blue pollen.cafe pollen.computer pollen.healthcare pollen.help pollen.host pollen.ltda pollen.ninja pollen.party pollen.pink pollen.pw pollen.solutions pollen.tips pollen.zone polytec.xyz principle.computer putney.town quantum.exposed quantum.glass respolyn.com respolyn.xyz rhamses.xyz sanders.party science.codes security.flowers siddhartha.press siddhartha.stream small.zone sokagakkai.host sokagakkai.press sokagakkai.space speak.computer stage.cafe stage.email stage.exchange stage.healthcare stage.legal stage.lgbt stage.ltda stage.tools stage.zone svg.codes svg.computer svg.cricket svg.press system.computer systemic.computer thegemandi.net thegemandi.store theravada.press theravada.science tilde.agency tilde.cloud tilde.computer tilde.host tilde.nyc tilde.online tilde.party tilde.press tilde.site tilde.space tilde.technology union.codes union.democrat union.institute vajrayana.press value.democrat vermont.audio vermont.bz vermont.city vermont.community vermont.computer vermont.diamonds vermont.estate vermont.express vermont.fish vermont.fund vermont.fyi vermont.global vermont.gold vermont.land vermont.limited vermont.ltda vermont.pw vermont.town vermont.university vermont.zone vermontestate.ltd vipassana.press vipassana.science vipassana.space vtexit.com vtexit.xyz wabanaki.host wabanaki.land wabanaki.press wabanaki.science wabanaki.tech warren.democrat weare.democrat williamsburg.center williamsburg.help williamsville.town workers.democrat ai brooklyn agency intension agency pollen agency tilde allnight services audio vermont blue feeling blue pollen bz vermont cafe buddha cafe pollen cafe stage camp brooklyn camp lake care nation center williamsburg city poem city vermont cloud intension cloud tilde club automata codes atom codes automatic codes nation codes crisper codes democrat codes mutation codes nation codes nation codes poem codes poetry codes science codes union community vermont computer artifact computer attribute computer automata computer automatic computer bach computer beethoven computer candy computer closure computer composer computer democrat computer dialogue computer dynamic computer dynamo computer epistemic computer function computer gender computer intellegence computer intelligence computer intension computer mindful computer mozart computer nation computer number computer object computer ontology computer paradox computer person computer poem computer poetry computer pollen computer principle computer speak computer svg computer system computer systemic computer tilde computer vermont com respolyn com vtexit cricket svg democrat elizabeth democrat leahy democrat union democrat value democrat warren democrat weare democrat workers design dfwalter design mutation diamonds vermont download democrat exposed quantum email lafland email stage estate buddha estate east estate nation estate vermont estate vermont exchange stage express vermont faith amitabha faith avalokitesvara faith guanyin faith liberalism faith maitreya fish vermont flowers liberalism flowers mutation flowers security fund vermont fyi democracy fyi democrat fyi vermont glass atom glass poem glass poetry glass quantum global vermont gold vermont guide atom healthcare democrat healthcare mutation healthcare pollen healthcare stage help mutation help philosophy help pollen help williamsburg host automata host bodhisattva hosting democrat host maitreya host mutation host pollen host sokagakkai host tilde host wabanaki info abenaki ink philosophy institute union jordan bz land abenaki land algonquian land firstnation land laf land nation land nulhegan land onenation land vermont land wabanaki legal stage lgbt epistemic lgbt mutation lgbt philosophy lgbt stage limited vermont ltda estate ltda pollen ltda stage ltda vermont ltd vermont net thegemandi ninja pollen nyc tilde online tilde org nulhegan parts atom parts intelligent party abenaki party lafland party marina party pollen party sanders party tilde pe jordan pink pollen polytec xyz press abenaki press algonquian press amitabha press automata press avalokitesvara press bodhisattva press guanyin press intension press mahayaina press maitreya press mutation press siddhartha press sokagakkai press svg press theravada press tilde press vajrayana press vipassana press wabanaki properties atom properties matter pw avalokitesvara pw intelligence pw mutation pw pollen pw vermont restaurant marina run liberalism science abenaki science avalokitesvara science bernie science guanyin science mahayaina science maitreya science theravada science theravada science vipassana science wabanaki site automata site tilde software democrat solutions poem solutions potry solutions pollen space algonquian space bodhisattva space maitreya space mutation space sokagakkai space tilde space vipassana store thegemandi stream guanyin stream siddhartha svg codes tech abenaki tech algonquian tech democtratic technology democratic technology mutation technology nation technology tilde tech wabanaki tips pollen tools stage town brattleboro town dummerston town putney town vermont town williamsville university vermont us abenaki us algonquian us lafland win liberalism work democrat work mutation xyz respolyn xyz rhamses xyz vtexit zone atom zone pollen zone small zone stage zone vermont


Mobile no registered successfully !
Mobile no already registered, please proceed to login or reister a new number!


Remy Ma's 19-Year-Old Son to Make Her a Grandma at 39
by VladTVRemy Ma is set to be a grandmother after photos of her son Janafi, aka Jace, and his girlfriend's baby shower spread across the internet. While Jace and his girlfriend looked overjoyed during their celebration, Remy Ma was reportedly not in attendance at the baby shower.
You can check out photos from the baby shower above.


2.6 Correlation and (Non)linearity I
Consider the following estimated simple linear regression model
\[\widehat{medv_i} = 34.554 - 0.95\times lstat_i.\]
with medv (median house value) and lstat (percent of households with low socioeconomic status) being variables from the already known Boston dataset.
The lm()mobject of the above model is available as mod in your working environment. The package MASS has been loaded.
Instructions:
Compute the correlation between medv and lstat.
Plot medv against lstat and add the regression line of the estimated model. What do you notice?
library(MASS)
mod <- lm(medv ~ lstat, data = Boston)
# Compute the correlation between medv and lstat
# Plot medv against lstat and add the regression line
# Compute the correlation between medv and lstat
cor(Boston$medv, Boston$lstat)
# Plot medv against lstat and add the regression line
plot(medv ~ lstat, data = Boston)
abline(mod, col = "red")
ex() %>% check_function("cor") %>% check_result() %>% check_equal()
test_or(ex() %>% check_function("plot") %>% {
check_arg(., "formula") %>% check_equal()
check_arg(., "data") %>% check_equal()
},
ex() %>% override_solution("plot(Boston$lstat, Boston$medv)") %>% check_function("plot") %>% {
check_arg(., "x") %>% check_equal()
check_arg(., "y") %>% check_equal()
},
ex() %>% override_solution("plot(Boston$medv ~ Boston$lstat)") %>% check_function("plot") %>%
check_arg("formula") %>% check_equal()
)
ex() %>% check_function("abline") #%>% check_arg("reg") %>% check_equal()
success_msg("Correct! Although the correlation coefficient suggests that medv and lstat are negatively linearly dependent, the relationship between them is clearly nonlinear. Hence a simple linear regression specification is inappropriate here.")
Hints:
You can use cor() to compute the correlation between variables.
As usual you can use plot() and abline() to visualize regression results.
2.6 Correlation and (Non)linearity II
In the previous exercise we saw that the correlation coefficient is not able to properly capture the functional form of a regression model in that it suggested by construction a linear form, whereas the true functional form seems to be nonlinear (e.g. exponential).
As an alternative consider the following nonlinear model specification
\[medv_i = \beta_0 + \beta_1\times\log(lstat_i) + u_i.\]
The package MASS has been loaded.
Instructions:
Conduct the regression from above and assign it to log_mod.
Visualize your results by drawing a scatterplot and adding the corresponding regression line. In comparison to the previous exercise what do you notice now?
library(MASS)
# Conduct the regression and assign it to mod_log
# Draw a scatterplot and add the corresponding regression line
# Conduct the regression and assign it to mod_log
mod_log <- lm(medv ~ log(lstat), data = Boston)
# Draw a scatterplot and add the corresponding regression line
plot(medv ~ log(lstat), data = Boston)
abline(mod_log, col = "red")
ex() %>% check_object("mod_log") %>% check_equal()
test_or(ex() %>% check_function("plot") %>% {
check_arg(., "formula") %>% check_equal()
check_arg(., "data") %>% check_equal()
},
ex() %>% override_solution("plot(log(Boston$lstat), Boston$medv)") %>% check_function("plot") %>% {
check_arg(., "x") %>% check_equal()
check_arg(., "y") %>% check_equal()
},
ex() %>% override_solution("plot(Boston$medv ~ log(Boston$lstat))") %>% check_function("plot") %>%
check_arg("formula") %>% check_equal()
)
ex() %>% check_function("abline") #%>% check_arg("reg") %>% check_equal()
success_msg("Correct! Although the relationship is not perfectly linear, using a log transformation considerably improves our model fit and seems to be a reasonable model specification.")
Hints:
Use lm() to conduct a regression.
As usual you can use plot() and abline() to visualize regression results.
3. Optimal Polynomial Order - Sequential Testing
From the previous exercise recall the following model
\[medv_i = \beta_0 + \beta_1\times\log(lstat_i) + u_i.\]
We already saw that this model specification seems to be a reasonable choice. However we cannot be entirely sure, if a higher polynomial order may be more suited to describe the data. Therefore please do the following:
The packages AER and MASS have been loaded.
Instructions:
- Determine the optimal order of the polylog model by the sequential testing approach. Assume a maximum polynomial order of \(r=4\) and a significance level of \(\alpha=0.05\). You are more or less free to solve this exercise as long as you use a for() loop. We recommend the following approach:
- Estimate a model, say mod, which starts with the highest polynomial order.
- Save the p-value (with robust standard errors) of the relevant parameter and compare it with the significance level \(\alpha\).
- If you cannot reject the null, repeat steps 1 and 2 for the next lowest polynomial order, otherwise stop the loop and print out the polynomial order.
- Extract the \(R^2\) of the selected model and assign it to the variable R2.
library(AER)
library(MASS)
# Find the optimal polynomial order of the polylog model.
# Extract the R^2 from the selected model and assign it to R2.
# Find the optimal polynomial order of the polylog model.
for(i in 4:1){
mod <- lm(medv ~ poly(log(lstat), i, raw = T), data = Boston)
pval <- coeftest(mod, vcov = vcovHC)[(i+1), 4]
if(pval < 0.05){
print(i)
break
}
}
# Extract the R^2 from the selected model and assign it to R2.
R2 <- summary(mod)$r.squared
ex() %>% check_for()
ex() %>% check_object("R2") %>% check_equal()
success_msg("Correct! Using the sequential testing approach we get an optimal order of r=2.")
Hints:
The index for the for() loop should start at 4 and end at 1.
You can use poly() inside of lm() as a generic way of incorporating higher orders of a certain variable in the model. Besides the variable, you have to specify the degree of the polynomial via the argument degree and set raw = TRUE.
You can use coeftest() together with the argument vcov to obtain p-values (with robust standard errors). Use the structure of the resulting object to extract the relevant p-value.
Use an if() statement to check whether the condition for no rejection is fulfilled and stop the for() loop with the help of break otherwise.
To obtain the \(R^2\), you can use summary() and extract it via $r.squared.
4. Estimated Effect of a Unit Change
Reconsider the polylog model from the previous exercise that was selected by the sequential testing approach. As this model is logarithmic and of quadratic form, we cannot simply read off the estimated effect of a unit change in lstat from the coefficient summary. Instead we have to compute it manually. To do so assume in the following that we are interested in the effect of an increase in lstat from 10% to 11%.
The selected polylog model is available as mod_pl in your working environment. The package MASS has been loaded.
Instructions:
Arrange the relevant data points in a data frame.
Use the new values to predict the corresponding values of medv.
Compute the expected effect with the help of the function diff().
library(MASS)
mod_pl <- lm(medv ~ poly(log(lstat), 2, raw = T), data = Boston)
# Set up the relevant data points.
# Predict the corresponding values of medv.
# Compute the expected effect of the change.
# Set up the relevant data points.
new_data <- data.frame(lstat = c(10, 11))
# Predict the corresponding values of medv.
Y_hat <- predict(mod_pl, newdata = new_data)
# Compute the expected effect of the change.
diff(Y_hat)
ex() %>% check_object("new_data") %>% check_equal()
ex() %>% check_object("Y_hat") %>% check_equal()
ex() %>% check_function("diff") %>% check_result() %>% check_equal()
success_msg("Correct! The expected change in medv for an increase in lstat from 10% to 11% is about -1.16 (that is -1160$).")
Hints:
Note that the column name of the data points in the data frame has to coincide with the name of the regressor.
You can use predict() together with the new data points to obtain the relevant values of medv.
diff() expects a vector and computes the differences between all entries of this vector.
5. Interactions between Independent Variables I
Consider the following regression model
\[medv_i=\beta_0+\beta_1\times chas_i+\beta_2\times old_i+\beta_3(chas_i\times old_i)+u_i\]
where \(chas_i\) and \(old_i\) are dummy variables. The first one takes the value \(1\), if the Charles River (a short river in the proximity of Boston) passes through suburb \(i\) and \(0\) otherwise. The latter accounts for a high proportion of old buildings and is constructed as follows
\[\begin{align} old_i = & \, \begin{cases} 1 & \text{if $age_i\geq 95$},\ 0 & \text{else}, \end{cases} \end{align}\]with \(age_i\) being the proportion of owner-occupied units built prior to 1940 in suburb \(i\).
The package MASS has been loaded.
Instructions:
Append the binary variable old to the dataset Boston.
Conduct the regression from above and assign it to mod_bb.
Obtain a coefficient summary of the model. How can you interpret the coefficient \(\hat{\beta}_3\)?
library(MASS)
# Create the binary variable old and append it to the dataset.
# Conduct the regression and assign it to mod_bb.
# Print the summary to the console
# Create the binary variable old and append it to the dataset.

Hints:
Use the logical operator >= to create a Boolean vector which then can be transformed to a numeric one via as.numeric().
- Inside of lm() there are two possibilities to incorporate interaction terms:
- Var1*Var2 to add Var1, Var2 and the corresponding interaction term at once.
- Var1:Var2 to manually add the interaction term (which of course requires to add the remaining terms manually as well)
- Var1*Var2 to add Var1, Var2 and the corresponding interaction term at once.
Use summary() to get a comprehensive overview of your model estimation.
6. Interactions between Independent Variables II
Now consider the regression model
\[medv_i=\beta_0+\beta_1\times indus_i+\beta_2\times old_i+\beta_3(indus_i\times old_i)+u_i\]
with \(old_i\) defined as in the previous exercise and \(indus_i\) being the proportion of non-retail business acres per suburb.
The variable old is already available in the dataset. The package MASS has been loaded.
Instructions:
Conduct the regression from above and assign it to mod_bc.
Extract the estimated coefficients of the model and assign them to params.
Plot medv against indus and add the regression lines for both states of the binary variable \(old\).
library(MASS)
Boston$old <- as.numeric(Boston$age >= 95)
# Conduct the regression and assign it to mod_bc.
# Extract the estimated model coefficients and assign them to params.
# Plot medv against indus and add the regression lines.

Hints:
You can use the structure of mod_bc or the function coef() to extract the estimated coefficients.
Besides passing a lm()-object to abline(), one can also manually specify intercept and slope with the arguments a and b, respectively.
Allaire, J., Xie, Y., McPherson, J., Luraschi, J., Ushey, K., Atkins, A., … Chang, W. (2018). Rmarkdown: Dynamic documents for r. Retrieved from https://CRAN.R-project.org/package=rmarkdown
Heiss, F. (2016). Using R for Introductory Econometrics. CreateSpace Independent Publishing Platform.
Hlavac, M. (2018). Stargazer: Well-formatted regression and summary statistics tables. Retrieved from https://CRAN.R-project.org/package=stargazer
Kleiber, C., & Zeileis, A. (2008). Applied Econometrics with R. Springer.
Kleiber, C., & Zeileis, A. (2017). AER: Applied econometrics with r. Retrieved from https://CRAN.R-project.org/package=AER
R Core Team. (2018). R: A language and environment for statistical computing. Vienna, Austria: R Foundation for Statistical Computing. Retrieved from https://www.R-project.org/
Stock, J., & Watson, M. (2015). Introduction to Econometrics, Third Update, Global Edition. Pearson Education Limited.
Wooldridge, J. (2016). Introductory Econometrics (Sixth). Cengage Learning.
Xie, Y. (2018). Knitr: A general-purpose package for dynamic report generation in r. Retrieved from https://CRAN.R-project.org/package=knitr


This is a web application that hopes to allow visitors as well as locals to discover Glasgow on a deeper level. It is designed to cater to locals and visitors whom are free to share their memories of their favourite hangout spots. They can denote waypoints in which they can write short description about their experiences. Users of the application can also view different routes. Users can also give their own feedback about their experience or suggest a better route. Based on the voting system, we can ensure quality comments and routes being on the top of the list.


ARMY OF DARKNESS A film review by Thomas A. Miller Copyright 1993 Thomas A. Miller
I don't usually do these, so I don't have a standard format or anything, but here are my thoughts on this film. You'll note that I don't have most of the actors' and actresses' names or anything like that...
ARMY OF DARKNESS is basically a sequel to EVIL DEAD and EVIL DEAD II: DEAD BY DAWN. Though I've only seen bits and pieces of those other two movies, I noted the similarities between them and this one. Directed by Sam Raimi (EVIL DEAD, EVIL DEAD II, DARKMAN), this movie details the adventures (and misadventures) of Ash (Bruce Campbell) after he gets thrown back into medieval times.
In a nutshell: It was hilarious. I haven't laughed so hard in a long, long time. As a combination horror/comedy, this film works very well. It's like a "Bill & Ted" or "Wayne's World" movie, with much more violence, and infinitely better special effects.
Plot nutshell: Ash tries to get back to his own time by finding the Necronomicon and saying three words of power. His inability to speak the words results in an army of undead being raised, and he must help the nearby people cope.
Effects: The walking skeletons were nicely done, as were the close- ups of the various dead people/monsters.
Pace: To me, this movie never slowed down, or had a dull moment.
Humor: Out of this world.  Also some of the things that happen to the undead (and to the living) are really funny, if you like this sort of movie.
Overall: I recommend it at full prices, and I'm not even a Raimi fan. I only went to see it because the previews looked good. It's perhaps even worth seeing twice.
Disclaimer: I don't do "real" reviews. If you found this one to be tolerable, thanks for bearing with me.
Thomas A. Miller Georgia Institute of Technology, Network Services<EMAIL_ADDRESS>.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Build dendrograms with sample groups highlighted by different colors. Visualize results of hierarchical clustering analyses as dendrograms whose leaves and labels are colored according to sample grouping. Assess whether data point grouping aligns to naturally occurring clusters.
| Version: | 1.3.1 |
| Depends: | R (≥ 3.0), graphics |
| Suggests: | stats, grDevices, rmarkdown, knitr |
| Published: | 2018-02-19 |
| Author: | Damiano Fantini |
| Maintainer: | Damiano Fantini <damiano.fantini at gmail.com> |
| License: | GPL-2 |
| NeedsCompilation: | no |
| CRAN checks: | colorhcplot results |
| Reference manual: | colorhcplot.pdf |
| Vignettes: |
Getting started with colorhcplot |
| Package source: | colorhcplot_1.3.1.tar.gz |
| Windows binaries: | r-devel: colorhcplot_1.3.1.zip, r-release: colorhcplot_1.3.1.zip, r-oldrel: colorhcplot_1.3.1.zip |
| OS X binaries: | r-release: colorhcplot_1.3.1.tgz, r-oldrel: colorhcplot_1.3.1.tgz |
| Old sources: | colorhcplot archive |
Please use the canonical form https://CRAN.R-project.org/package=colorhcplot to link to this page.


| I l@ve RuBoard |
Every woodworker needs a good, solid, reliable workbench, somewhere to hold work pieces at a convenient height while he or she works them. The workbench becomes the center of the wood shop, the craftsman returning to it time and time again as a piece takes shape.
For a programmer manipulating files of text, that workbench is the command shell. From the shell prompt, you can invoke your full repertoire of tools, using pipes to combine them in ways never dreamt of by their original developers. From the shell, you can launch applications, debuggers, browsers, editors, and utilities. You can search for files, query the status of the system, and filter output. And by programming the shell, you can build complex macro commands for activities you perform often.
For programmers raised on GUI interfaces and integrated development environments (IDEs), this might seem an extreme position. After all, can't you do everything equally well by pointing and clicking?
The simple answer is "no." GUI interfaces are wonderful, and they can be faster and more convenient for some simple operations. Moving files, reading MIME-encoded e-mail, and typing letters are all things that you might want to do in a graphical environment. But if you do all your work using GUIs, you are missing out on the full capabilities of your environment. You won't be able to automate common tasks, or use the full power of the tools available to you. And you won't be able to combine your tools to create customized macro tools. A benefit of GUIs is WYSIWYG—what you see is what you get. The disadvantage is WYSIAYG—what you see is all you get.
GUI environments are normally limited to the capabilities that their designers intended. If you need to go beyond the model the designer provided, you are usually out of luck—and more often than not, you do need to go beyond the model. Pragmatic Programmers don't just cut code, or develop object models, or write documentation, or automate the build process—we do all of these things. The scope of any one tool is usually limited to the tasks that the tool is expected to perform. For instance, suppose you need to integrate a code preprocessor (to implement design-by-contract, or multi-processing pragmas, or some such) into your IDE. Unless the designer of the IDE explicitly provided hooks for this capability, you can't do it.
You may already be comfortable working from the command prompt, in which case you can safely skip this section. Otherwise, you may need to be convinced that the shell is your friend.
As a Pragmatic Programmer, you will constantly want to perform ad hoc operations—things that the GUI may not support. The command line is better suited when you want to quickly combine a couple of commands to perform a query or some other task. Here are a few examples.
Find all .c files modified more recently than your Makefile.
| Shell… |
find . -name ' *.c' -newer Makefile -print |
| GUI….. | Open the Explorer, navigate to the correct directory, click on the Makefile, and note the modification time. Then bring up Tools/Find, and enter *.c for the file specification. Select the date tab, and enter the date you noted for the Makefile in the first date field. Then hit OK. |
Construct a zip/tar archive of my source.
| Shell… |
zip archive.zip *.h *.c -or- tar cvf archive.tar *.h *.c |
| GUI….. | Bring up a ZIP utility (such as the shareware WinZip [URL 41], select "Create New Archive," enter its name, select the source directory in the add dialog, set the filter to "* .c", click "Add," set the filter to "* .h", click "Add," then close the archive.¨ |
Which Java files have not been changed in the last week?
| Shell… |
find . -name '*.java' -mtime +7 -print |
| GUI….. | Click and navigate to "Find files," click the "Named" field and type in "*.java", select the "Date Modified" tab. Then select "Between." Click on the starting date and type in the starting date of the beginning of the project. Click on the ending date and type in the date of a week ago today (be sure to have a calendar handy). Click on "Find Now." |
Of those files, which use the awt libraries?
| Shell… |
find . -name '*.java' -mtime +7 -print | xargs grep 'java.awt' |
| GUI….. | Load each file in the list from the previous example into an editor and search for the string "java.awt". Write down the name of each file containing a match. |
Clearly the list could go on. The shell commands may be obscure or terse, but they are powerful and concise. And, because shell commands can be combined into script files (or command files under Windows systems), you can build sequences of commands to automate things you do often.
Tip 21
Use the Power of Command Shells
Gain familiarity with the shell, and you'll find your productivity soaring. Need to create a list of all the unique package names explicitly imported by your Java code? The following stores it in a file called "list."
grep '^import ' *.java | sed -e's/.*import *//' -e's/;.*$//' | sort -u >list
If you haven't spent much time exploring the capabilities of the command shell on the systems you use, this might appear daunting. However, invest some energy in becoming familiar with your shell and things will soon start falling into place. Play around with your command shell, and you'll be surprised at how much more productive it makes you.
Although the command shells provided with Windows systems are improving gradually, Windows command-line utilities are still inferior to their Unix counterparts. However, all is not lost.
Cygnus Solutions has a package called Cygwin [URL 31]. As well as providing a Unix compatibility layer for Windows, Cygwin comes with a collection of more than 120 Unix utilities, including such favorites as 1s, grep, and find. The utilities and libraries may be downloaded and used for free, but be sure to read their license.[3] The Cygwin distribution comes with the Bash shell.
[3] The GNU General Public License [URL 57] is a kind of legal virus that Open Source developers use to protect their (and your) rights. You should spend some time reading it. In essence, it says that you can use and modify GPL'd software, but if you distribute any modifications they must be licensed according to the GPL (and marked as such), and you must make source available. That's the virus part—whenever you derive a work from a GPL'd work, your derived work must also be GPL'd. However, it does not limit you in any way when simply using the tools—the ownership and licensing of software developed using the tools are up to you.
Using Unix Tools Under WindowsWe love the availability of high-quality Unix tools under Windows, and use them daily. However, be aware that there are integration issues. Unlike their Ms-dos counterparts, these utilities are sensitive to the case of filenames, so ls a*.bat won't find AUTOEXEC.BAT. You may also come across problems with filenames containing spaces, and with differences in path separators. Finally, there are interesting problems when running Ms-dos programs that expect Ms-DOS-style arguments under the Unix shells, For examples, the Java utilities from JavaSoft use a colon as their CLASSPATH separators under Unix, but use a semicolon under MS-DOS. As a result, a Bash or ksh script that runs on a Unix box will run identically under Windows, but the command line it passes to Java will be interpreted incorrectly. |
Alternatively, David Korn (of Korn shell fame) has put together a package called uwin. This has the same aims as the Cygwin distribution—it is a Unix development environment under Windows. UWIN comes with a version of the Korn shell. Commercial versions are available from Global Technologies, Ltd. [URL 30]. In addition, AT&T allows free downloading of the package for evaluation and academic use. Again, read their license before using.
Finally, Tom Christiansen is (at the time of writing) putting together Perl Power Tools, an attempt to implement all the familiar Unix utilities portably, in Perl [URL 32],
Are there things that you're currently doing manually in a GUI? Do you ever pass instructions to colleagues that involve a number of individual "click this button," "select this item" steps? Could these be automated?
Whenever you move to a new environment, make a point of finding out what shells are available. See if you can bring your current shell with you.
Investigate alternatives to your current shell. If you come across a problem your shell can't address, see if an alternative shell would cope better.
| I l@ve RuBoard |


All about Inputs
Color picker
Color Me!
Required
Username:
Autofocus
Username:
Placeholder
Username:
E-mail
Username:
Regex validations
Strong password($Password1234):
Test


My Uploaded Systems
Upload New Method {% if uploads|length > 0 %}Edit/delete systems and run human evaluations using the ChatEval evaluation library or Amazon Mechanical Turk.
{{ upload.model.name }}
{{ upload.model.description }}
{% for evalset in upload.evalsets %} {{ evalset }} {% endfor %}Run Human Evaluation {% if upload.model.public != True %} Publish {% else %} Delete {% endif %} View
{% endfor %}


It's called the Red Planet because its iron-rich dust gives its landscape a rusty-red color. Don't be as red as anger...


{{define "content"}}
Made from premium, organic Meyer lemons. These fruit are left on the tree until they reach the peak of ripeness and then juiced within 8 hours of being picked.
Lemonade made from our premium juice is sure to make your stand the most popular in the neighborhood.


Hi! I am Mallika Subramanian. I was born in Kuwait and have spent a majority of my life there. Having been brought up entirely in Kuwait I gained an excellent mix of cultures and traditions. I'm from Delhi Public School, Kuwait and currently an undergraduate student at IIIT-H persuing CSE. This is one of my first projects for web development. It has been an experience learning and implementing it.
I am a passionate bharatanatyam dancer, trained for fourteen years and have learnt carnatic vocals as well. Both of these continue to be an integral part of me. I have been a part of several productions of my dance academy, Kinkini. Alongside these art forms, I enjoy public speaking, typography and baking! I have also been fortunate to have the opportunity to participate as a delegate at the Harvard MUN conducted in India.


Hulkenberg doesn't feel like he'll be leaving F1 after losing seat
by Adam CooperRenault's Nico Hulkenberg says he does not feel like he is leaving Formula 1, and that he will be ready for any race opportunities in 2020.
The 32-year-old driver is currently without a race seat for 2020. He was most recently linked to a deal in IndyCar with Ed Carpenter Racing, though team boss Ed Carpenter said this would not happen on Tuesday.
In F1, he had been holding on to the slim possibility of a seat at Alfa Romeo before it extended Antonio Giovinazzi's deal.
Hulkenberg had already acknowledged that he would not return to Williams, which is expected to name Formula 2 frontrunner Nicholas Latifi - who is currently a junior driver for the team and has taken part in free practice sessions for the squad - alongside the already confirmed George Russell.
Reflecting on his current situation, Hulkenberg said: "No regrets.
"Of course I've done mistakes, like we all do sometimes that I would have liked to avoid, a few moves or things I'd do differently now, but that's always easy to say with hindsight.
"So all-in-all, I'm at peace with what I've achieved and I don't feel I'm retiring as a race driver.
"I don't feel I am leaving F1, I might not be on the grid, but if there's an opportunity I'm going to be ready."
As well as IndyCar rumours, Hulkenberg has also been linked with a drive in the DTM, though he played down the likelihood of such a deal happening.
"I haven't signed anything, and I won't do for the foreseeable future," Hulkenberg added.
"I received calls from different, let's say racing series, teams, but nothing is really happening at the moment.
"To be honest, my state of mind is quite relaxed.
"I will finish the season anyways and I want to be as successful as possible and then after that, I want to rewind a little, take a moment for myself or two or three, and see what I want to do, what seems of interest.
"I'm certainly not having the feeling that I want to rush into something, just to race, so I am pretty relaxed.
"I feel a decade of F1 is intense, living at that high-pace, so that's why I just need to see when the new year starts, how I feel and how things develop and evolve and in which direction.
"Honestly, at the moment, I just don't know."
Any hypothetical switch to IndyCar would have to be road-course only for Hulkenberg, as he has confirmed that he does not want to contest oval rounds in the series.
"Ovals, I've always said I'm not a big fan of it, just doesn't strike me and I think I have too much respect for that, it just seems not my thing," he added.
"So yeah, I'd keep it limited to the road courses."


Review the TODO items matching the specified filter. Click Configure to choose an existing TODO filter, or open the TODO settings page and define a new filter to be applied.


About
Contact
Services
{{ user.username|default:'Guest' }}
Overall Progress
Learning Path Progress
Quizzes
Videos
Articles
Resource 1
Resource 2
Resource 3
Resource 4
Resource 5
Resource 6
Resource 7


PushMapPosition()
Syntax
PushMapPosition(Map())Description
Remembers the current element (if any) of the map so it can later be restored using PopMapPosition(). The position is remembered on a stack structure, so multiple calls to this function are possible.
Parameters
Map() The map to use.
Return value
None.
Remarks
This function can be used to remember the current element, so an iteration can be made over the map using NextMapElement() or ForEach and the current element can be restored after the iteration using PopMapPosition(). Multiple calls can be made to this function, as long as each is balanced with a corresponding PopMapPosition() call later.
Note: It is not allowed to delete an element that is a remembered current element using the DeleteMapElement() or ClearMap() function. This may result in a crash when PopMapPosition() is called because the elements memory is no longer valid.
Example
NewMap Numbers() Numbers("A") = 1 Numbers("B") = 2 Numbers("C") = 5 Numbers("D") = 3 Numbers("E") = 2 Numbers("F") = 5 ; A simple duplicate elimination using a nested iteration ; ForEach Numbers() Value = Numbers() PushMapPosition(Numbers()) While NextMapElement(Numbers()) If Numbers() = Value DeleteMapElement(Numbers()) EndIf Wend PopMapPosition(Numbers()) Next ForEach Numbers() Debug Numbers() Next
See Also
PopMapPosition(), FindMapElement(), NextMapElement(), ResetMap(), ForEach
Supported OS
All


Grass at breeze procedural Actors
This demo features the following elements:
Wrapping shapes into actors.
Managing Timers.


A selection of stock UIKit controls:
UISegmentedControl
(x2)UIStepper
UISwitch
UISlider
UIPageControl
UIButton
(x4)UITextField
(x2)UITextField
with a custom input view (x2)This screen helps us verify that Reveal correctly supports a comprehensive set of UIControl
subclasses from UIKit.
Something interesting to note is how UITextField
changes its subview structure and layout when you modify its borderStyle
property.


World of Rations is an agricultural tech company with their focus on finding the optimal ration dictated by the available feedstuffs. Founded in Cape Town by two people passionate about their industry.
Dr. Savas Couvaras is a well-known and respected nutritionist in the Western Cape who spent several years at EPol.
Barend Erasmus is a technology enthusiast with over 5 years experience in both corporate and start-up like environments.
World of Rations is looking to incorporate many more features. Feel free to send us suggestions via email.


---
layout: post
title: I hate experts-exchange.com
date: '2008-03-31T17:42:00.003+02:00'
author: Steven Van Acker
tags:
- English
- Windows
modified_time: '2008-03-31T17:44:51.224+02:00'
blogger_id: tag:blogger.com,1999:blog-5513234137363262204.post-4785624732587971085
blogger_orig_url: http://www.singularity.be/2008/03/i-hate-experts-exchangecom.html
---
I'm trying to find out how I can prevent a .BAT batch script from exiting when it encounters an error. Looking on google gives me a number of hits, with useful information apparently on www.experts-exchange.com. However, the useful information is blanked out with the following message:
All comments and solutions are available to Premium Service Members only.
Start your 7 day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started
Already a member? Login to view this solution.


Free and Pro AddThis tools to your AngularJS app. This AngularJS module includes a directive, service and provider. It is smart about route/location changes and the AngularJS digest cycles and how they affect AddThis tools. Requires a free AddThis account.


I’m a Front End Developer, Web Designer, and Project Manager with 10+ years experience, specializing in Shopify and WordPress.
Currently, I'm directing web design and development for Very Great, building digital experiences and ecommerce for brands like Wild One, Courant, and w&p. Very Great is now hiring, see openings here!
Not seeking opportunities at the moment, but I am always answering emails. Click here to get in touch.


I've noticed some problems with BBLog and the newest battlelog update.
They changed something in the background and now a few things not working anymore.
Please post all problems related to this battlelog update here, if you have noticed that things after the update not working anymore.
The update seems to be a preparation for BF:Hardline, some battlelog code give me that information.


Tesla CEO says will build Gigafactory 4 in 'Berlin Area'
Tesla Inc's Chief Executive Officer Elon Musk said on Tuesday the electric car maker is going to build Gigafactory 4, a new vehicle factory, in the "Berlin Area", according to a report by automotive news website Electrek.
REUTERS: Tesla Inc's Chief Executive Officer Elon Musk said on Tuesday the electric car maker is going to build a new vehicle factory, "Gigafactory 4", in the "Berlin Area".
Tesla had earlier said it will soon reveal the location of a European Gigafactory for production in 2021.
Musk, in an awards ceremony in Germany, said the factory will be near the new Berlin airport, adding it will also create an engineering and design center in the city.
In October, Reuters reported that the automaker is aiming to start production for its gigafactory in China amid uncertainties around orders, labor and suppliers.
(Reporting by Ayanti Bera in Bengaluru; Editing by Shounak Dasgupta)


AR 589 — Week 7
Mixing Color with Paint / Ink
- Subtractive color mixing
- Start with primary colors
- The more you add, the closer you get to brown
Mixing Color with Light
- This is additive color mixing
- The more you add the close you get to white
- Screens are made up of tiny lights – pixels – that light up red, green, or blue.
- Resolution is the number that refers to how many pixels are on a display.
Color in the Browser
rgba(0, 0, 0, 1)
#000000
hsl(0, 0, 0, 1)
- Named Colors
What's Possible?
- Gradients
- Filters
- Media Queries
To Do
- Read Chapters 1-3 of JavaScript & jQuery
- Keep working
- Have a nice spring break


[gecode-users] Views and serialization
Guido Tack
tack at ps.uni-sb.de
Tue Nov 27 10:24:24 CET 2007
Gustavo Gutierrez wrote:
> I have a question about the VarMap or VarMapIter. Is it possible to
> know how many variables a VarMap stores, or to access VarBase objects
> through VarMapIter?
No, that functionality was missing. It's now available in the Gecode
trunk.
> . My idea is to iterate on the VarMap and to add
> the VarBase corresponding objects to the q array. The problem is that
> i don't find a method to get the size of the map to use it in a for
> loop. The VarMapIter only provides access to variable specifications
> but not to VarBase objects.
With the added size method, you can implement the iteration yourself
(using the VarBase* var(int i) const; method). If you not only want
to fill an array of VarBase*, but an array of IntVars, BoolVars, or
SetVars, you'll have to cast the VarBase* to the corresponding
variable type. You can do that through the views:
IntVar iv(Int::IntView(static_cast<Int::IntVarImp*>(vm.var(0))))
would create an IntVar from entry 0 of the VarMap vm. You can use the
VarSpec to query the variable type. Currently, vm.spec(0).vti() may
return "VTI_INT", "VTI_BOOL", or "VTI_SET".
Cheers,
Guido
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2436 bytes
Desc: not available
URL: <http://www.ps.uni-sb.de/pipermail/users/attachments/20071127/687b3722/attachment.bin>
More information about the gecode-users
mailing list


LIVE AND LET DIE (1973) A film review by Andrew Hicks Copyright 1996 Andrew Hicks / Fatboy Productions
LIVE AND LET DIE (1973) ***
As far as the obligatory James Bond theme song goes, the one here, by Paul McCartney and Wings (not the dreaded four-times-a- day-on-USA sitcom), is by far the best. (Don't tell me those Swedish meatballs a-ha even come close with "The Living Daylights.") Also, LIVE AND LET DIE brags the accomplishment of having more black people than the other seventeen Bond movies combined.
It's kind of sad, actually, to have to hear James Bond being referred to as "honkey" and "cue ball" while in Harlem. (You wouldn't think a white guy would get that kind of treatment in Harlem, but oh how the times have changed.) This dramatic shift in focus is most likely the result of Louis Farrakhan replacing David Duke as executive producer of the Bond series.
That's not the only replacement we see in LIVE AND LET DIE. Roger Moore replaces Sean Connery as 007, beginning a seven- movie run extending through 1985's A VIEW TO A KILL. Moore, naturally, doesn't completely capture the smooth, debonair feel Connery put forth in his six outings as the secret agent, but he does assume the role surprisingly well. He'd almost be on the same level as Connery if not for the fact that he reminds me so much of Adam West, TV's Batman. Or is it just my imagination running away with me?
The plot mixes the typical drug lord scenario with voodoo, shifting from Harlem to San Monique to New Orleans in pursuit of Mr. Big. Solitaire, Bond's third girl of the movie, is a Tarot card reader. Bond stacks a deck of cards with "The Lovers" in an attempt to poke her. (Get it? Cards. Poker.) He takes her virginity away, which in turn takes away her magical ability to read the future. (She should have seen it coming, I say.) So was it worth it, Mr. Bond? Huh? Just so she could be your 863rd conquest?
LIVE AND LET DIE is entertaining in two ways. First, it works as a straight action movie almost the entire time. The only lapse is an overlong boat chase in which bumbling redneck Sheriff Pepper (whose brother is a Sergeant) is introduced as some kind of comic relief, trying to capture Bond and his pursuers. Second, LIVE AND LET DIE is more dated than most other Bond movies, especially with its introduction of jive talkin', bushy-sideburned blaxploitation villains, giving it an unintended camp hilarity.
Visit the Movie Critic at LARGE website at http://www.missouri.edu/~c667778/movies.html
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Welcome
Welcome to Login.
Log In
Please enter user name and password
Log In
Log in with Google
Sign Up!


Date: Thu, 18 Dec 1997 18:38:55 GMT Server: Stronghold/1.3.4 Ben-SSL/1.3 Apache/1.1.3 Content-type: text/html Content-length: 3232 Last-modified: Wed, 12 Nov 1997 19:09:23 GMT
|
| Principles of Service | Company Profile and History |
Recent Press Releases |
Awards and Recognition |
What is Assisted Living? / Alzheimer's Care / Sunrise Services / Sunrise Locations / To Contact Us /


In any language, signed or spoken
Language learning videos
For laughs or deep thoughts
Education Upload your educational videos here! Lesson plans, educational stories, and other academic resources designed to teach literacy skills.
Lesson plans, educational stories, and other academic resources designed to teach literacy skills.
Entertainment Upload your video stories here! Stories and other videos shared by users that are intended to entertain others – whether fun or serious.
Stories and other videos shared by users that are intended to entertain others – whether fun or serious.


Entity Relation Diagram Menu Options
To access ERD specific options, select ERD and one of the following menu options:
• Show All
• Attributes
• Operations
• Hide All
• Attributes
• Operations
• Show Built-in Relations
The Built-in Relations dialog box appears.
a Select the relation types you want to display.
b Click OK.
Relation lines do not point directly to the corresponding classes or member entities, they are spaced evenly along the height of the class diagram to which they connect. You can display information about a particular relation line by clicking it. This information appears in the Viewer status bar. The relation type and all of the entities that share that relation type.
Relation lines in an Entity Relation Diagram include logical symbols that clarify the relationships that they indicate. Each line identifies a pair of related classes or entities. Arrowheads indicate the direction of the relation.
The following logical symbols indicate the nature of the relationships between two classes:
|
Logical Symbol |
Description |
|
|
For each instance of A, there are zero or more instances of B
|
|
|
For each instance of A, there is exactly one instance of B
|
|
|
For each instance of A, there are one or more instances of B
|
|
|
For each instance of A, there is an optional instance of B
|
• Show Other Relations
The Filter Relations dialog box appears.
a To display relations that match a string, select Filter and type a string in the field.
b To show inheritance relations, select Show Inherited Relations.
Note: This option is enabled by default for other views.
c Click Apply, then OK.
• Show Members
The Show Members dialog box appears.
a Do one or more of the following:
• Select the items you want to display.
• To display only those members whose name matches a specified string, enter a string in the Name filter field.
Note: Strings are case-sensitive.
b Click Apply, then OK.


Drunk raccoon stumbles around German Christmas market, then shot by local hunter
by Nicole DarrahA drunk raccoon stumbled around a Christmas market in Germany on Saturday, according to police, who said the furry creature tripped around until it eventually fell asleep — before it was shot by a local hunter.
The "obviously intoxicated" raccoon startled shoppers as it scurried around the market in Erfurt, in the state of Thuringia, after it apparently drank some mulled wine that was left over in glasses.
'DRUNK' RACCOONS SPOTTED STUMBLING AROUND IN CANADIAN NEIGHBORHOOD
Despite its drunken state, "a breathalyzer test on the animal was not carried out," a police spokesperson told DW News.

The raccoon was later shot by a hunter, according to the German news outlet.
CLICK HERE TO GET THE FOX NEWS APP
It was originally reported that firefighters transported the animal to a shelter. A similar situation — involving drunk hedgehogs who came across some bottles of alcohol eggnog in the trash — reportedly happened in 2018. Those animals were taken in by a zoo.


---
layout: default
title: Home
---
RCSDS - UC Berkeley
A project-based introduction to statistical data analysis. Through case studies, computer laboratories, and a term project, students learn practical techniques and tools for producing statistically sound and appropriate, reproducible, and verifiable computational answers to scientific questions. Course emphasizes version control, testing, process automation, code review, and collaborative programming. Software tools include Bash, Git, R, Python, LaTeX, pandoc, Makefile.
- Instructor: Gaston Sanchez
- email:
gaston.stat at gmail.com
- OH: By appointment
- Session Dates: 01/26/16 - 04/27/16
- Class: MW 8:30-10:00 in 334 Evans
- Lab: M 12:00-2:00 in 342 Evans
- Prerequisite: Graduate students from DS421 program


woofmark
Barking up the DOM tree.
**woof** woof
A modular, progressive, and beautiful Markdown and HTML editor
Create your website in the area below:
# Markdown? Here's a teensie bit of [Markdown][1] to get you started. Markdown lets you
produce **rich** HTML-formatted text by writing _plain text_
. You can write `code`, text in _italics_ or give them **a "bolder" format**. You can create headings by prefixing them with one or more hash characters _(#)_. The _less hashes_ they have, the _more prominent_ your headings become. Creating **links** is merely a matter of [wrapping some text in brackets][2] and referencing a resource locator, like the ones you'll find at the bottom of this text.
Images can be embedded
just the same, except you'll have to prefix the wrapped text with _an exclamation mark_. > Click on the
HTML
button to see this text come to life as HTML, the
markup
language of the web. > > -- Nico Note that, ```js var markTags = 'still work'; var within = true; function code (
here, are, some, args
) { // do wonderful things! return here * are - some + args; } ``` [1]: http://daringfireball.net/projects/markdown/ "Original introduction to Markdown" [2]: http://ponyfoo.com
woofmark(document.querySelector('#ta'), { parseMarkdown: megamark, parseHTML: domador });
Disclaimer:
the example has a teensie bit more of code that's used to preserve the GitHub-style
```
code fences.
The buttons above look kind of rough, but that's on purpose: it's up to you to style them and the API helps you do that. Here's another example using Font Awesome.
Get it on GitHub!
bevacqua/woofmark


As is required by Seasar2, S2Dao requires JDK1.4 or later. Extract the S2DaoVx.x.x.zip archive file to some directory. Open Eclipse project and import extracted files in s2dao directory by selecting [File]- [Existing Projects into Workspace]. Samples files are located under src/examples directory.
Files necessary to use S2Dao are included in the s2dao/lib directory. HSQLDB RDBMS is included to allow easier testing with a database. To use HSQLDB, it is necessary that it is started. To start HSQLDB, execute /bin/runHsqldb.bat file (for Windows users). lib/hsqldb.jar is required to use HSQLDB, but it is unnecessary in a production environment which does not use HSQLDB. To use S2Dao, add to the CLASSPATH *.jar files under the lib directory (excep hsqldb.jar) and j2ee.dicon, dao.diocon, log4j.properties under the src directory. If S2Dao files are imported to an Eclipse workspace, it is not necessary to add these files to the CLASSPATH.
JavaBeans is used to associate with a table.
To associate a JavaBeans to a table, following constants declaration and method implementation are necessary:
Table columns are associated using COLUMN annotation. COLUMN annotation constant is declared as follows:
- public static final String Property name_COLUMN = "column name";
EMPNO column is associated to property employeeNo as follows:
public static final String employeeNo_COLUMN = "EMPNO";
Note: If the property name is the same as the column name, it is not necessary to define COLUMN annotation. Properties not in the table are ignored - statement to avoid these properties are not necessary.
N:1 mapping is when several rows are associated with one row. For example, several employees are mapped to one department. To use N:1 mapping, it is required to declare constants RELNO and RELKEYS. Constant RELNO is declared as follows:
- public static final int Property name_RELNO
= value;
Constant RELNO is consecutive number in N:1 mapping. For example, if AAA table has N:1 mapping to tables BBB and CCC, RELNO are 0 and 1 for tables BBB and CCC respectively.
RELNO is used to identify columns in result set with the associated table. For example, if there is a SELECT command like follows: SELECT
..., BBB.HOGE AS HOGE_0, ... FROM AAA, BBB ...
HOGE_0 implies it is associated with column HOGE in table BBB. RELKEYS constant is as follows:
- public static final String Property name_RELKEYS = "column name of the table with N rows: column name the table with 1 row";
N:1 mapping key is specified by RELKEYS constant. When there are several keys, keys are separaed by commas ( , ). For example, mykey1:yourkey1, mykey2:yourkey2. DEPTNUM column in EMP table is associated to DEPTNO in DEPT table as follows:
public static final int department_RELNO = 0;
public static final String department_RELKEYS = "DEPTNUM:DEPTNO";
When column names in both tables are the same, column name of thetable with 1 row may be omitted. Following is an example associating DEPTNO in EMP table with DEPT table when both tables have column DEPTNO.
public static final String department_RELKEYS = "DEPTNO";
Furthermore, when associating columns when columns in both tables are the same and when the column is a primary key in the table with 1 row, RELKEYS declaration may be omitted.
ID (primary key) values that are automatically set by RDBMS may be automatically set to generated Beans by using ID annotation. ID annotation is specified as follows: property name_ID = "identity".
public static final String id_ID = "identity";
SEQUENCE may be used. Replace myseq in the following example with the actual SEQUENCE to be used.
public static final String id_ID = "sequence, sequenceName=myseq";
When ID is set manually, there is no other required setting. Primary keys are recognized from table definition (JDBC metadata). However, it is also possible to explicitly specify a primary key by "assign".
Columns are recognized as persistent from table definition (JDBC metadata). However, it is also possible to explicitly specify a column as non-persistent by using NO_PERSISTENT_PROPS. When NO_PERSISTENT_PROPS is set to an empty string, information from JDBC metadata will not be used and all properties are considered to be persistent.
public static final String NO_PERSISTENT_PROPS = "dummy1, dummy2";
Following is an example to declare a variable empno which is to be associated with column named EMPNO of type NUMBER to a variable. (Related topic:COLUMN annotation)
private long empno;
Note: When a column is Null, Java variable of primitive type returns 0 (zero) when Null. To get Null from a variable, use Java wrapper class (e.g. java.lang.Integer instead of primitive type int).
Implements getter/setter methods associated with table column properties. Method naming convention is as follows:
getter method
- public type getProperty name()
setter method
- public void setproperty name(argument)
For example, getter/setter methods for property private long empno is as follows:
private long empno;
public long getEmpno() {
return empno;
}
public void setEmpno(long empno) {
this.empno = empno;
}
JavaBans associated with EMP table having the above settings are as follows:
import java.io.Serializable;
public class Employee implements Serializable {
public static final String TABLE = "EMP";
public static final int department_RELNO = 0;
public static final String department_RELKEYS = "DEPTNUM:DEPTNO";
private long empno;
private String ename;
private Short deptnum;
private Department department;
public Employee() {
}
public Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
public Short getDeptnum() {
return deptnum;
}
public void setDeptnum(Short deptnum) {
this.deptnum = deptnum;
}
public long getEmpno() {
return empno;
}
public void setEmpno(long empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
}
Dao is created as an interface. By separating persistent data and logic, aim of Dao to have persistent bean is achieved. There is a one to one relationship between a JavaBean and Dao. So, there is one Dao for one JavaBean. By calling on Dao method, SQL command written in the associated SQL file is executed. To create a Dao, followings are required:
Constant declaration of JavaBeans association (BEAN annotation)
Following annotations are used to reference method argument in SQL command and to specify property which uses insert/update SQL commands WHERE clause and/or ORDER clause.
ARGS annotation is used to reference method argument in SQL commands. Method argument name can not be referenced using reflection. ARGS annotation has the following syntax:
- public static final String method name_ARGS
= " argument name";
Following is an example that defines argument name used in a public Employee getEmployee(int empno) method which is defined in Dao.
public static final String getEmployee_ARGS = "empno";
When the method argument is associated with a table column name, argument name is set to the table column name. For example. if method argument name is "empno" and table column name is "employeeno" then employeeno is specified. When there are several arguments, they are separated by a comman. When there is only one argument, ARGS annotation may be omitted.
QUERY annotation is used to add WHERE clause and ORDER BY clause to automatically generated SELECT statement. QUERY Annotation has the following syntax:
- public static final String Method name_QUERY = "WHERE clause ORDER BY clause";
Following is an example to query employees within a specified salary range:
public static final String getEmployeesBySal_QUERY = "sal BETWEEN ? AND ? ORDER BY empno";
public List getEmployeesBySal(Float minSal, Float maxSal);
"?" in the above example is called a bind variable. Bind variables in QUERY annotation are replaced with values in method arguments in order they are used. It is not required to have an ARGS annotation. When using only ORDER BY clause, start with ORDER BY. SQL comment may be used. Following is an example of using SQL comment.
public static final String getEmployees_QUERY =
"job = /*job*/'CLERK'/*IF deptno != null*/ AND deptno = /*deptno*/20/*END*/";
The following example add the condition to get only those rows which have non-null deptno and which have deptno value equivalent to the value in the argument. Refer to SQL comment for further details.
By calling Dao method, SQL command in associated SQL file is executed. There is a naming convention to these INSERT, UPDATE, and DELETE methods. S2Dao determines type of SQL commands by matching the called method name with the naming convention. Currently, method can not be overloaded.
INSERT
Name of method to INSERT data is required to start with either insert, add, or create. Method return type must be either void or int. When return type is int, number of updated row is returned. Argument type must match with entity type. Following is an example of using this method:
public void insert(Department department);
public int addDept(Department department);
public void createDept(Department department);
UPDATE
Name of method to UPDATE data is required to start with either update, modify, or store. Method return type must be either void or int. When return type is int, number of updated row is returned. Argument type must match with entity type. Following is an example of using this method:
public int update(Department department);
public int modifyDept(Department department);
public void storeDept(Department department);
DELETE
Name of method to DELET data is required to start with either delete or remove. Method return type must be either void or int. When return type is int, number of updated row is returned. Argument type must match with entity type. Following is an example of using this method:
public void delete(Department department);
public int removeDept(Department department);
Query (SELECT)
To retrieve information from a query, type of return value must be specified. When return type is set to java.util.List, SELECT command returns a list of entities. When return type is set to an entity type array, array of entity type is returned. When return type is set to just an entity type, an entity is returned. Other return type returns only one column from one row as when SELECT count(*) FROM emp returns only one int value.
To include only specified properties in a SQL command during an update, PERSISTENT_PROPS annotation is used.
public static final String insert_PERSISTENT_PROPS = "deptno";
In the above example, primary key, versionNo, and timestamp along with properties specified in PERSISTENT_PROPS annotation are treated as persistent in an insert method.
SQL annotation became available in version 1.0.28. As in SQL file, SQL annotation supports both SQL command and SQL comment.
There is a name SQL Annotation naming convention.
Associating SQL file with a method defined in Dao
SQL annotation is associated with method defined in Dao as follows:
- method name_SQL
SQL annotation associated with examples.dao.EmployeeDao#getAllEmployees() method is as follows:
public static final String getAllEmployees_SQL = "SELECT
emp.*, dept.dname dname_0, dept.loc loc_0 FROM emp, dept
WHERE emp.deptno = dept.deptno ORDER BY emp.empno;";
Multiple DBMS support
It is possible to switch SQL annotation for differing DBMSs. Database that is currently being used is automatically determined by S2Dao using the java.sql.DatabaseMetadata#getDatabaseProductName() method. S2Dao determines which SQL annotation to use by comparing the currently used DBMS with SQL annotation suffix. For example, SQL annotation for oracle should have "oracle" as a suffix as in "getAllEmployees_oracle_SQL".
Following is a list of suffixes with their corresponding DBMS.
dicon file registers Dao as a component to a container. To use Dao, it is necessary to apply AOP to the registered Dao. dicon file may be place any where but it is usually place in the directory as the Dao. Refer to DIContainer for further information.
Applying S2DaoInterceptor
To use Dao, it is necessary to apply AOP to Dao registered with org.seasar.dao.interceptors.S2DaoInterceptor. Refer to AOP for further information on AOP. Following is an example of registering Dao(example.dao.EmployeeDao) as a component:
<component class="org.seasar.dao.implDaoMetaDataFactoryImpl"/> becomes an argument to S2DaoInterceptor constructor. So, org.seasar.dao.impl.DaoMetaDataFactoryImpl is also written.
When a method defined in Dao is called, query and update SQL commands are written in SQL file is executed. These SQL files should be place in the same directory as the Dao files. Note: S2Dao will automatically create SQL commands when there is no corresponding SQL file.
SQL file name
S2Dao and SQL files should be named in accordance with their naming convention.
Associating SQL file with method defined in Dao
To associate SQL file to a method defined in Dao, SQL file should be named as described below:
- Dao class name_method name.sql
SQL file associated with examples.dao.EmployeeDao#getAllEmployees() is as follows:
examples/dao/EmployeeDao_getAllEmployees.sql
Multiple DBMS support
It is possible to switch SQL file for differing DBMSs. Database that is currently being used is automatically determined by S2Dao using the java.sql.DatabaseMetadata#getDatabaseProductName() method. S2Dao determines which SQL file to use by comparing the currently used DBMS with SQL file name suffix. For example, SQL file name for oracle should have "oracle" as a suffix as in "EmployeeDao_getAllEmployees_oracle.sql".
Following is a list of suffixes with their corresponding DBMS.
DBMS
Suffix
Oracle
oracle
DB2
db2
MSSQLServer
mssql
MySQL
mysql
PostgreSQL
postgre
Firebird
firebird
HSQL
hsql
SQL command
In a SQL file, ordinary SQL commands such as "SELECT * FROM EMP" and "DELETE FROM EMP WHERE EMPNO = 7788" may be written. It is also possible to write a statement that dynamically changes condition in a WHERE clause. Refer to SQL comment for details.
In S2Dao, association of arguments in a method to SQL bind variables are written within comment declaration such as within "/**/" and "--". SQL commands may still be executed because non-SQL association statements are written within comments. As a best practice, it is better to first write and test SQL commands and then write associations within comments.
To write actual comments in SQL file, insert a space after "/*" before the comment string. For example, /* hoge*/. S2Dao will recognize the space after the "/*" and treat the content as an actual comment string.
Bind variable comment
To use value of an argument in a method defined by Dao, bind variable comment is used. Literal to the right of bind variable comment is automatically replace with a value and executed. Bind variable comment is written as follows:
- /*variable name*/Literal
Argument that is a JavaBeans is written as follows:
- /*argument name.Property name*/Literal
Argument name is required to be the same as the ARGS annotation value set in Dao. (However, when there is only one argument, there is not name restriction.)
public String getEmployee_ARGS = "empno";
public Employee getEmployee(int empno);
When the above method is defined in Dao, SQL file (EmploeeDao_getEmployee.sql) may use bind variable as follows. Value of getEmployee method is automatically set.
SELECT * FROM emp WHERE empno = /*empno*/7788
Following is an example of using bind variable in an IN clause.
- IN /*argument name*/(...)
IN /*names*/('aaa', 'bbb')
Argument is java.util.List or an array. For the IN clause in the above example, argument is written as follows:
String[] names = new String[]{"SCOTT", "SMITH", "JAMES"};
String array names is automatically replaced with bind variables.
Following is an example of using "LIKE":
ename LIKE /*ename*/'hoge'
To use a wild card character, include it in a method argument. To specify to include "COT", wild card character is embedded in the argument as follows:
employeeDao.findEmployees("%COT%");
Embedded variable comment
To embed argument value of a method defined in Dao directly into a SQL command as a string, variable comment is written in a SQL command. Literal to the right of the variable comment is replace with the argument value. Embedded variable comment has the following syntax:
- /*$variable name*/literal
When an argument is a JavaBean, embedded variable comment has the following syntax:
- /*$variable name.property name*/literal
IF comment
To change SQL command during execution based on a condition. IF comments are used. IF comment has the following syntax:
- /*IF condition*/ .../*END*/
Following is an example of an IF comment:
/*IF hoge != null*/hoge = /*hoge*/'abc'/*END*/
When the condition results in true, statements in /*IF*/ and /*END*/ are evaluated. In the above example, only when variable hoge is not null will hoge = /*hoge*/'abc' be evaluated. ELSE comment may be used to execute statements when condition is false. Following is an example of IF comment with an ELSE.
When the variable hoge is not null, expression "hoge is null" is evaluated.
BEGIN comment
BEGIN comment is used to not output WHERE clause when all IF comment in a WHERE clause, which does not include an ELSE, is false. BEGIN comment is used with IF comment. Syntax of BEGIN comment is as follows:
In the above example, when job and deptno are null, WHERE clause will not be outputted. When job == null,deptno != null, "WHERE depno = ?" is outputted. When job != null,deptno == null, "WHERE job = ?" is outputted. When job != null,deptno != null, "WHERE job = ? AND depno = ?" is outputted.
By using EntityManager, WHERE clause and ORDER BY clause may be inserted automatically into a SELECT statement. Syntax is the same as QUERY annotation. It is mainly used to dynamically create a query command. To use EntityManager, extend the following class
- org.seasar.dao.impl.AbstractDao
Dao interface name must end with "Dao". S2Dao treats interface implementation of class extending AbstractDao with name ending with "Dao" as Dao interface.
EntityManager has the following methods:
find() method
Returns as java.util.List. Arguments are as follows: public List
find(String query); public List find(String query, Object
arg1); public List find(String query, Object arg1, Object
arg2); public List find(String query, Object arg1, Object arg2,
Object arg3); public List find(String query, Object[]
args);
findArray() method
Returns an array. Arguments are as follows: public Object[] findArray(String
query); public Object[] findArray(String query, Object
arg1); public Object[] findArray(String query, Object arg1,
Object arg2); public Object[] findArray(String query, Object
arg1, Object arg2, Object arg3); public Object[]
findArray(String query, Object[] args);
findBean() method
Returns a JavaBeans. Arguments are as follows: public Object
findBean(String query); public Object findBean(String query,
Object arg1); public Object findBean(String query, Object arg1,
Object arg2); public Object findBean(String query, Object arg1,
Object arg2, Object arg3); public Object findBean(String query,
Object[] args);
findObject() method
Returns a single value such as of type int when count(*) is executed. Arguments are as follows: public Object
findObject(String query); public Object findObject(String
query, Object arg1); public Object findObject(String query,
Object arg1, Object arg2); public Object findObject(String
query, Object arg1, Object arg2, Object arg3); public Object
findObject(String query, Object[] args);
Argument is similar to QUERY annotation. Where there are 4 or more arguments of type Object, use array of type Object.
Basic way to implement class extending AbstractDao.
Extend org.seasar.dao.impl.AbstractDao
Implement Dao
it is required to end interface name of Dao to implement with "Dao".
Implement constructor
Call super(org.seasar.dao.DaoMetaDataFactory) with org.seasar.dao.DaoMetaDataFactory as an argument.
Implement method defined in Dao
When using method supported by EntityManager, EntityManager may be retrieved by using getEntityManager() method. For example, getEntityManager().find(...);.
Following is an example of class extending AbstractDao:
package examples.dao;
import java.util.List;
import org.seasar.dao.DaoMetaDataFactory;
import org.seasar.dao.impl.AbstractDao;
public class Employee2DaoImpl extends AbstractDao implements Employee2Dao {
public Employee2DaoImpl(DaoMetaDataFactory daoMetaDataFactory) {
super(daoMetaDataFactory);
}
public List getEmployees(String ename) {
return getEntityManager().find("ename LIKE ?", "%" + ename + "%");
}
}
Update SQL command is automatically generated if the method name must abide to the naming convention and there is one method with JavaBeans in an argument. It is not necessary to create a SQL file. Following is an example to automatically generate a SQL insert command.
S2Dao is also able to automatically control locks on data. To automatically set locks, create a column in a table for locking and define versionNo as of type int in a JavaBeans. Locking will be done based on this versionNo column.
For example, when 2 users try to update versionNo=0 data, the first user will be able to update the record. When the data is updated, value of versionNo is incremented by 1. When the second user tries to update the data, S2Dao compares the versionNo column and finds that the second user's versionNo is still 0 while the data's versionNo is now 1. Because there is a difference, S2Dao raises UpdateFailureRuntimeException and aborts the data update.
Beside VersionNo, S2Dao is able to lock data based on Timestamp. Just define a property named timestamp of data type Timestamp. Be aware that when the timestamp column is set to null, lock fails because S2Dao tries to compare with value null.
SQL command is automatically is generated when in an update method, argument is set to an entity class array or a List. The generated SQL command may then be used in a batch update.
S2Dao may generate SELECT command automatically depending on method signature. SQL command with dynamically changing WHERE clause depending on an argument can be set by specifying column name in ARGS annotation.
Following definition is use to automatically generate SQL command like those above. For information on string sequence /**/ in the above example, refer to SQL comment.
public static final String getEmployeeByJobDeptno_ARGS = "job, deptno";
public List getEmployeeByJobDeptno(String job, Integer deptno);
N:1 mapped column is specified by "column name_association number". N:1 mapped Bean retrieves data as 1 SQL command by using left outer join operation. If RDBMS does not support left outer join, S2Dao will not automatically generate SQL commands. S2Dao,however, is able to recognize RDBMS, and properly treats RDBMS like Oracle which has a proprietary left outer joins operation.
It is possible to specify DTO (Data Transter Object) in an argument. In this situation, ARGS annotation should not be specified. When there is 1 argument and ARGS annotation is not specified, S2Dao will treat the argument as DTO and will use that DTO7s property to automatically generate SQL command. When property name and column name are different, COLUMN annotation is used to specify the column name. To specify N:1 mapped column, use "column name_association number". Propery (column) not in a table are ignored. It is possible to dynamically create a SQL command with changing WHERE clause based on a property. It is possible to both dynamically generate SQL command as well as have QUERY annotation starting with ORDER BY.
package examples.dao;
public class EmployeeSearchCondition {
public static final String dname_COLUMN = "dname_0";
private String job;
private String dname;
...
}
List getEmployeesBySearchCondition(EmployeeSearchCondition dto);
Define a method. Method to retrieve all rows (getAllEmployees() method) Method to retrieve rows matching employee number specified in the argument( getEmployee(int empno) method) Method to return number of employees (getCount() method) Method to retrieve rows matching job and department number specified in arguments. (getEmployeeByJobDeptno(String job, Integer deptno) method) Method to update employee data (update(Employee employee) method)
SQL command and method argument are associated using ARGS annotation.
getCount() method that returns the number of rows in the EMP table returns only one row, so the data type of return value is declared as int.
package examples.dao;
import java.util.List;
public interface EmployeeDao {
public Class BEAN = Employee.class;
public List getAllEmployees();
public String getEmployee_ARGS = "empno";
public Employee getEmployee(int empno);
public int getCount();
public String getEmployeeByJobDeptno_ARGS = "job, deptno";
public List getEmployeeByJobDeptno(String job, Integer deptno);
public int update(Employee employee);
}
Creating SQL file
UL>
Create SQL files corresponding to methods defined in Dao.
File is named in accordance with the naming convention - "class name_ method name.sql".
Create a container by passing directory path of the created dicon file (EmployeeDao.dicon) as the first argument to org.seasar.framework.container.S2Container#create() method.
Get component by passing class name (EmployeeDao.class) of registered component as the first argument to org.seasar.framework.container.S2Container#getComponent() method.
Executte method defined in Dao
package examples.dao;
import java.util.List;
import org.seasar.framework.container.S2Container;
import org.seasar.framework.container.factory.S2ContainerFactory;
public class EmployeeDaoClient {
private static final String PATH = "examples/dao/EmployeeDao.dicon";
public static void main(String[] args) {
S2Container container = S2ContainerFactory.create(PATH);
container.init();
try {
EmployeeDao dao = (EmployeeDao) container
.getComponent(EmployeeDao.class);
List employees = dao.getAllEmployees();
for (int i = 0; i < employees.size(); ++i) {
System.out.println(employees.get(i));
}
Employee employee = dao.getEmployee(7788);
System.out.println(employee);
int count = dao.getCount();
System.out.println("count:" + count);
dao.getEmployeeByJobDeptno(null, null);
dao.getEmployeeByJobDeptno("CLERK", null);
dao.getEmployeeByJobDeptno(null, new Integer(20));
dao.getEmployeeByJobDeptno("CLERK", new Integer(20));
System.out.println("updatedRows:" + dao.update(employee));
} finally {
container.destroy();
}
}
}
Number of rows that has been updated may be found from the value in "updatedRows". Files in this example is under the s2dao/src/examples/dao directory.
This is an example of automatically generating UPDATE, INSERT, DELETE SQL commands and of lock control using VersionNo. This example does not require creating a SQL file. Following files are created:
Dao(DepartmentDao.java)
dicon file(DepartmentDao.dicon)
Execution class(DepartmentDaoClient.java)
Creating Dao
Associate DEPT table with related JavaBeans
Define update method. Method to insert a department (insert(Department department) method) Method to update a department (update(Department
department) method) Method to delete a department (delete(Department department) method)
package examples.dao;
public interface DepartmentDao {
public Class BEAN = Department.class;
public void insert(Department department);
public void update(Department department);
public void delete(Department department);
}
Create a container by using org.seasar.framework.container.S2Container#create()method with the first argument set to the path of created dicon file (DepartmentDao.dicon).
Retrieve the component by using org.seasar.framework.container.S2Container#getComponent() method with the first argument set to the class name (DepartmentDao.class) registered with the component.
Execute method defined in Dao
package examples.dao;
import org.seasar.framework.container.S2Container;
import org.seasar.framework.container.factory.S2ContainerFactory;
public class DepartmentDaoClient {
private static final String PATH = "examples/dao/DepartmentDao.dicon";
public static void main(String[] args) {
S2Container container = S2ContainerFactory.create(PATH);
container.init();
try {
DepartmentDao dao = (DepartmentDao) container
.getComponent(DepartmentDao.class);
Department dept = new Department();
dept.setDeptno(99);
dept.setDname("foo");
dao.insert(dept);
dept.setDname("bar");
System.out.println("before update versionNo:" + dept.getVersionNo());
dao.update(dept);
System.out.println("after update versionNo:" + dept.getVersionNo());
dao.delete(dept);
} finally {
container.destroy();
}
}
}
Result
DEBUG 2004-09-09 19:22:10,588 [main] physical connection opened
DEBUG 2004-09-09 19:22:10,588 [main] logical connection opened
DEBUG 2004-09-09 19:22:11,447 [main] logical connection closed
DEBUG 2004-09-09 19:22:11,603 [main] logical connection opened
DEBUG 2004-09-09 19:22:11,603 [main] INSERT INTO DEPT (deptno, dname, versionNo, loc)
VALUES(99, 'foo', 0, null)
DEBUG 2004-09-09 19:22:11,666 [main] logical connection closed
before update versionNo:0
DEBUG 2004-09-09 19:22:11,666 [main] logical connection opened
DEBUG 2004-09-09 19:22:11,666 [main] UPDATE DEPT SET dname = 'bar',
versionNo = versionNo + 1, loc = null WHERE deptno = 99 AND versionNo = 0
DEBUG 2004-09-09 19:22:11,666 [main] logical connection closed
after update versionNo:1
DEBUG 2004-09-09 19:22:11,666 [main] logical connection opened
DEBUG 2004-09-09 19:22:11,666 [main] DELETE FROM DEPT WHERE deptno = 99 AND versionNo = 1
DEBUG 2004-09-09 19:22:11,681 [main] logical connection closed
DEBUG 2004-09-09 19:22:11,681 [main] physical connect closed
The reslt shows SQL commands being automatically generated. Also, JavaBeans (Departmen) has a datatype int property versionNo which is being incremented by 1 to lock rows. Before update method was called, versionNo was 0 but became 1 after the call. Files in this example is available under the s2dao/src/examples/dao directory.
This is a sample to automatically generate a SELECT command and locking based on Timestamp. SQL file is not necessary. A method that uses DTO as an argument is also shown.
Following files are created:
Dao(EmployeeAutoDao.java)
DTO(EmployeeSearchCondition.java)
dicon file(EmployeeAutoDao.dicon)
Execution class (EmployeeAutoDaoClient.java)
Creating Dao
Associate EMP table with related JavaBeans
Define method. Method (getAllEmployees() method) to query all data Method (getEmployeeByJobDeptno(String job, Integer deptno) method) to take job and department number as arguments and return matching employees. Method (getEmployeeByEmpno(int empno) method) to retrieve employee number matching the employee number passed in the argument Method (getEmployeesBySal(float minSal, float maxSal) method) to retrieve employee with salary within range of those specified in the argument. Method (getEmployeeByDname(String dname) method) to retrieve employee in department specified in the argument. Method with DTO argument (getEmployeesBySearchCondition(EmployeeSearchCondition dto) method) to retrieve employee Method to update employee (update(Employee employee) method)
package examples.dao;
import java.util.List;
public interface EmployeeAutoDao {
public Class BEAN = Employee.class;
public List getAllEmployees();
public String getEmployeeByJobDeptno_ARGS = "job, deptno";
public List getEmployeeByJobDeptno(String job, Integer deptno);
public String getEmployeeByEmpno_ARGS = "empno";
public Employee getEmployeeByEmpno(int empno);
public String getEmployeesBySal_QUERY = "sal BETWEEN ? AND ? ORDER BY empno";
public List getEmployeesBySal(float minSal, float maxSal);
public String getEmployeeByDname_ARGS = "dname_0";
public List getEmployeeByDname(String dname);
public List getEmployeesBySearchCondition(EmployeeSearchCondition dto);
public void update(Employee employee);
}
Create a container by using org.seasar.framework.container.S2Container#create() method with the first argument set to the path of created dicon file (EmployeeAutoDao.dicon).
Retrieve the component by using org.seasar.framework.container.S2Container#getComponent() method with the first argument set to the class name (EmployeeAutoDao.class) registered with the component.
 Also, value of Timestamp before and after update is different suggesting that this value is used to lock a row. Files in this example is available under the s2dao/src/examples/dao directory.
This example uses EntityManager to query employees whose name contain the specified string. Following files are created:
Dao(Employee2Dao.java)
Class (Employee2DaoImpl.java) extending AbstractDao
dicon file(Employee2Dao.dicon)
Execution class (Employee2DaoClient.java)
Creating Dao
Interface name must end with string "Dao".
Associate with JavaBeans relating to the EMP table
Define method to query. Method to query employee (getEmployees(String ename))
package examples.dao;
import java.util.List;
public interface Employee2Dao {
public Class BEAN = Employee.class;
public List getEmployees(String ename);
}
Creating class extending AbstractDao
Extend org.seasar.dao.impl.AbstractDao
implement Employee2Dao
Implement getEmployees method. Query with string containing specified name
package examples.dao;
import java.util.List;
import org.seasar.dao.DaoMetaDataFactory;
import org.seasar.dao.impl.AbstractDao;
public class Employee2DaoImpl extends AbstractDao implements Employee2Dao {
public Employee2DaoImpl(DaoMetaDataFactory daoMetaDataFactory) {
super(daoMetaDataFactory);
}
public List getEmployees(String ename) {
return getEntityManager().find("ename LIKE ?", "%" + ename + "%");
}
}
Creating dicon file
include dao.dicon
Define as a component the class that extends AbstractDao
Apply dao.interceptor(S2DaoInterceptor) to registered component
Create a container by using org.seasar.framework.container.S2Container#create()method with the first argument set to the path of created dicon file (Employee2Dao.dicon).
Retrieve the component by using org.seasar.framework.container.S2Container#getComponent() method with the first argument set to the class name (Employee2Dao.class) registered with the component.
Specify condition to include string "CO" in a name
Execute method defined in Dao
ackage examples.dao;
import java.util.List;
import org.seasar.framework.container.S2Container;
import org.seasar.framework.container.factory.S2ContainerFactory;
public class Employee2DaoClient {
private static final String PATH = "examples/dao/Employee2Dao.dicon";
public static void main(String[] args) {
S2Container container = S2ContainerFactory.create(PATH);
container.init();
try {
Employee2Dao dao = (Employee2Dao) container
.getComponent(Employee2Dao.class);
List employees = dao.getEmployees("CO");
for (int i = 0; i < employees.size(); ++i) {
System.out.println(employees.get(i));
}
} finally {
container.destroy();
}
}
}
Result
DEBUG 2004-10-01 10:14:39,333 [main] physical connection opened
DEBUG 2004-10-01 10:14:39,333 [main] logical connection opened
DEBUG 2004-10-01 10:14:40,379 [main] logical connetion closed
DEBUG 2004-10-01 10:14:41,254 [main] SELECT EMP.empno, EMP.ename, EMP.job, EMP.mgr,
EMP.hiredate, EMP.sal, EMP.comm, EMP.deptno, department.deptno AS deptno_0,
department.dname AS dname_0,
department.loc AS loc_0, department.versionNo AS versionNo_0 FROM EMP
LEFT OUTER JOIN DEPT department ON EMP.deptno = department.deptno
WHERE ename LIKE '%CO%'
DEBUG 2004-10-01 10:14:41,270 [main] logical connection opened
DEBUG 2004-10-01 10:14:41,426 [main] logical connection closed
7788, SCOTT, ANALYST, 7566, 1982-12-09 00:00:00.0, 3000.0, null, 20
{20, RESEARCH, DALLAS, 0}
DEBUG 2004-10-01 10:14:41,442 [main] physical connection closed
Source codes of above examples are in s2dao/src/examples/dao.


Slide 1
Call To Action Email!
Slide 2
Call To Action in Website!
Slide 3
Call To Action in Audio!
Click to see some magic


{% load static %}
Your Gold
(earns 10 to 20 golds)
(earns 5 to 10 golds)
(earns 2 to 5 golds)
(earns 0 to 50 golds)
Activities


button
0
1
0
1
2
changing button
another changing button
3rd changing button
both
another both
click adds class removed by mousedown
mdown
assertions button
long attr
submit
action success!